pg_result_error_field
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_result_error_field — 오류 보고서의 개별 필드를 반환합니다.
설명
pg_result_error_field(PgSql\Result $result
, int $field_code
): string|false|null
pg_result_error_field()는 result
인스턴스와 관련된 자세한 오류 메시지 필드 중 하나를 반환합니다. PostgreSQL 7.4 이상 서버에서만 사용할 수 있습니다. 오류 필드는 field_code
로 지정됩니다.
쿼리가 실패하면 pg_query() 및 pg_query_params()가 false
를 반환하므로 pg_send_query() 및 pg_get_result()를 사용하여 결과 핸들을 가져와야 합니다.
실패한 pg_query() 쿼리에서 추가 오류 정보를 가져와야 하는 경우 pg_set_error_verbosity() 및 pg_last_error()를 사용한 다음 결과를 구문 분석합니다.
매개변수
result
- pg_query(), pg_query_params() 또는 pg_execute()(특히)에 의해 반환된 PgSql\Result 인스턴스.
field_code
- 가능한
field_code
값은 다음과 같습니다PGSQL_DIAG_SEVERITY
,PGSQL_DIAG_SQLSTATE
,PGSQL_DIAG_MESSAGE_PRIMARY
,PGSQL_DIAG_MESSAGE_DETAIL
,PGSQL_DIAG_MESSAGE_HINT
,PGSQL_DIAG_STATEMENT_POSITION
,PGSQL_DIAG_INTERNAL_POSITION
(PostgreSQL을 8.0 이상 만 해당),PGSQL_DIAG_INTERNAL_QUERY
(PostgreSQL을 8.0 이상 만 해당),PGSQL_DIAG_CONTEXT
,PGSQL_DIAG_SOURCE_FILE
,PGSQL_DIAG_SOURCE_LINE
또는PGSQL_DIAG_SOURCE_FUNCTION
.
반환 값
오류 필드의 내용을 포함하는 문자열입니다. 필드가 없으면 null
이고 실패하면 false
입니다.
변경 로그
버전 | 설명 |
---|---|
8.1.0 | code>result 매개변수는 이제 PgSql\Result 인스턴스를 필요로 합니다. 이전에는 resource가 필요했습니다. |
Examples
예제 #1 pg_result_error_field() 예제
<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
if (!pg_connection_busy($dbconn)) {
pg_send_query($dbconn, "select * from doesnotexist;");
}
$res1 = pg_get_result($dbconn);
echo pg_result_error_field($res1, PGSQL_DIAG_SQLSTATE);
?>
기타
- pg_result_error() - 결과와 관련된 오류 메시지 가져오기