&reftitle.constants; &extension.constants;

`PGSQL_LIBPQ_VERSION` (`string`)

- Short libpq version that contains only numbers and dots.

`PGSQL_LIBPQ_VERSION_STR` (`string`)

- Prior to PHP 8.0.0, the long libpq version that includes compiler information. As of PHP 8.0.0, the value is identical to `PGSQL_LIBPQ_VERSION`, and using `PGSQL_LIBPQ_VERSION_STR` is deprecated.

`PGSQL_ASSOC` (`int`)

- Passed to `pg_fetch_array`. Return an associative array of field names and values.

`PGSQL_NUM` (`int`)

- Passed to `pg_fetch_array`. Return a numerically indexed array of field numbers and values.

`PGSQL_BOTH` (`int`)

- Passed to `pg_fetch_array`. Return an array of field values that is both numerically indexed (by field number) and associated (by field name).

`PGSQL_CONNECT_FORCE_NEW` (`int`)

- Passed to `pg_connect` to force the creation of a new connection, rather than re-using an existing identical connection.

`PGSQL_CONNECT_ASYNC` (`int`)

- Passed to `pg_connect` to create an asynchronous connection.

`PGSQL_CONNECTION_AUTH_OK` (`int`)

`PGSQL_CONNECTION_AWAITING_RESPONSE` (`int`)

`PGSQL_CONNECTION_BAD` (`int`)

- Returned by `pg_connection_status` indicating that the database connection is in an invalid state.

`PGSQL_CONNECTION_MADE` (`int`)

`PGSQL_CONNECTION_OK` (`int`)

- Returned by `pg_connection_status` indicating that the database connection is in a valid state.

`PGSQL_CONNECTION_SETENV` (`int`)

`PGSQL_CONNECTION_SSL_STARTUP` (`int`)

`PGSQL_CONNECTION_STARTED` (`int`)

`PGSQL_SEEK_SET` (`int`)

- Passed to `pg_lo_seek`. Seek operation is to begin from the start of the object.

`PGSQL_SEEK_CUR` (`int`)

- Passed to `pg_lo_seek`. Seek operation is to begin from the current position.

`PGSQL_SEEK_END` (`int`)

- Passed to `pg_lo_seek`. Seek operation is to begin from the end of the object.

`PGSQL_EMPTY_QUERY` (`int`)

- Returned by `pg_result_status`. The string sent to the server was empty.

`PGSQL_COMMAND_OK` (`int`)

- Returned by `pg_result_status`. Successful completion of a command returning no data.

`PGSQL_TUPLES_OK` (`int`)

- Returned by `pg_result_status`. Successful completion of a command returning data (such as a `SELECT` or `SHOW`).

`PGSQL_TUPLES_CHUNK` (`int`)

- Returned by `pg_result_status`. Indicates the successful completion of a command returning data in chunked mode. Returned for `SELECT` commands when `pg_set_chunked_rows_size` is set. The result set is divided into multiple chunks, each containing a predefined number of rows. Available as of PHP 8.4.0 and libpq 17.

`PGSQL_COPY_OUT` (`int`)

- Returned by `pg_result_status`. Copy Out (from server) data transfer started.

`PGSQL_COPY_IN` (`int`)

- Returned by `pg_result_status`. Copy In (to server) data transfer started.

`PGSQL_BAD_RESPONSE` (`int`)

- Returned by `pg_result_status`. The server's response was not understood.

`PGSQL_NONFATAL_ERROR` (`int`)

- Returned by `pg_result_status`. A nonfatal error (a notice or warning) occurred.

`PGSQL_FATAL_ERROR` (`int`)

- Returned by `pg_result_status`. A fatal error occurred.

`PGSQL_TRANSACTION_IDLE` (`int`)

- Returned by `pg_transaction_status`. Connection is currently idle, not in a transaction.

`PGSQL_TRANSACTION_ACTIVE` (`int`)

- Returned by `pg_transaction_status`. A command is in progress on the connection. A query has been sent via the connection and not yet completed.

`PGSQL_TRANSACTION_INTRANS` (`int`)

- Returned by `pg_transaction_status`. The connection is idle, in a transaction block.

`PGSQL_TRANSACTION_INERROR` (`int`)

- Returned by `pg_transaction_status`. The connection is idle, in a failed transaction block.

`PGSQL_TRANSACTION_UNKNOWN` (`int`)

- Returned by `pg_transaction_status`. The connection is bad.

`PGSQL_DIAG_SEVERITY` (`int`)

- Passed to `pg_result_error_field`. The severity; the field contents are `ERROR`, `FATAL`, or `PANIC` (in an error message), or `WARNING`, `NOTICE`, `DEBUG`, `INFO`, or `LOG` (in a notice message), or a localized translation of one of these. Always present.

`PGSQL_DIAG_SQLSTATE` (`int`)

- Passed to `pg_result_error_field`. The SQLSTATE code for the error. The SQLSTATE code identifies the type of error that has occurred; it can be used by front-end applications to perform specific operations (such as error handling) in response to a particular database error. This field is not localizable, and is always present.

`PGSQL_DIAG_MESSAGE_PRIMARY` (`int`)

- Passed to `pg_result_error_field`. The primary human-readable error message (typically one line). Always present.

`PGSQL_DIAG_MESSAGE_DETAIL` (`int`)

- Passed to `pg_result_error_field`. Detail: an optional secondary error message carrying more detail about the problem. May run to multiple lines.

`PGSQL_DIAG_MESSAGE_HINT` (`int`)

- Passed to `pg_result_error_field`. Hint: an optional suggestion what to do about the problem. This is intended to differ from detail in that it offers advice (potentially inappropriate) rather than hard facts. May run to multiple lines.

`PGSQL_DIAG_STATEMENT_POSITION` (`int`)

- Passed to `pg_result_error_field`. A string containing a decimal integer indicating an error cursor position as an index into the original statement string. The first character has index 1, and positions are measured in characters not bytes.

`PGSQL_DIAG_INTERNAL_POSITION` (`int`)

- Passed to `pg_result_error_field`. This is defined the same as the `PG_DIAG_STATEMENT_POSITION` field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. The `PG_DIAG_INTERNAL_QUERY` field will always appear when this field appears.

`PGSQL_DIAG_INTERNAL_QUERY` (`int`)

- Passed to `pg_result_error_field`. The text of a failed internally-generated command. This could be, for example, a SQL query issued by a PL/pgSQL function.

`PGSQL_DIAG_CONTEXT` (`int`)

- Passed to `pg_result_error_field`. An indication of the context in which the error occurred. Presently this includes a call stack traceback of active procedural language functions and internally-generated queries. The trace is one entry per line, most recent first.

`PGSQL_DIAG_SOURCE_FILE` (`int`)

- Passed to `pg_result_error_field`. The file name of the PostgreSQL source-code location where the error was reported.

`PGSQL_DIAG_SOURCE_LINE` (`int`)

- Passed to `pg_result_error_field`. The line number of the PostgreSQL source-code location where the error was reported.

`PGSQL_DIAG_SOURCE_FUNCTION` (`int`)

- Passed to `pg_result_error_field`. The name of the PostgreSQL source-code function reporting the error.

`PGSQL_DIAG_SCHEMA_NAME` (`int`)

- Available since PHP 7.3.0.

`PGSQL_DIAG_TABLE_NAME` (`int`)

- Available since PHP 7.3.0.

`PGSQL_DIAG_COLUMN_NAME` (`int`)

- Available since PHP 7.3.0.

`PGSQL_DIAG_DATATYPE_NAME` (`int`)

- Available since PHP 7.3.0.

`PGSQL_DIAG_CONSTRAINT_NAME` (`int`)

- Available since PHP 7.3.0.

`PGSQL_ERRORS_TERSE` (`int`)

- Passed to `pg_set_error_verbosity`. Specified that returned messages include severity, primary text, and position only; this will normally fit on a single line.

`PGSQL_ERRORS_DEFAULT` (`int`)

- Passed to `pg_set_error_verbosity`. The default mode produces messages that include the above plus any detail, hint, or context fields (these may span multiple lines).

`PGSQL_ERRORS_VERBOSE` (`int`)

- Passed to `pg_set_error_verbosity`. The verbose mode includes all available fields.

`PGSQL_ERRORS_SQLSTATE` (`int`)

- Passed to `pg_set_error_verbosity`. Includes only the error severity and the `SQLSTATE` error code. If no error code is available, the output is like `PGSQL_ERRORS_TERSE` mode. Before PostgreSQL 11.1, the output is always the same as in `PGSQL_ERRORS_TERSE` mode.

`PGSQL_NOTICE_LAST` (`int`)

- Used by `pg_last_notice`. Available since PHP 7.1.0.

`PGSQL_NOTICE_ALL` (`int`)

- Used by `pg_last_notice`. Available since PHP 7.1.0.

`PGSQL_NOTICE_CLEAR` (`int`)

- Used by `pg_last_notice`. Available since PHP 7.1.0.

`PGSQL_STATUS_LONG` (`int`)

- Passed to `pg_result_status`. Indicates that numerical result code is desired.

`PGSQL_STATUS_STRING` (`int`)

- Passed to `pg_result_status`. Indicates that textual result command tag is desired.

`PGSQL_CONV_IGNORE_DEFAULT` (`int`)

- Passed to `pg_convert`. Ignore default values in the table during conversion.

`PGSQL_CONV_FORCE_NULL` (`int`)

- Passed to `pg_convert`. Use SQL `NULL` in place of an empty `string`.

`PGSQL_CONV_IGNORE_NOT_NULL` (`int`)

- Passed to `pg_convert`. Ignore conversion of &null; into SQL `NOT NULL` columns.

`PGSQL_DML_NO_CONV` (`int`)

- Passed to `pg_insert`, `pg_select`, `pg_update` and `pg_delete`. All parameters passed as is. Manual escape is required if parameters contain user supplied data. Use `pg_escape_string` for it.

`PGSQL_DML_EXEC` (`int`)

- Passed to `pg_insert`, `pg_select`, `pg_update` and `pg_delete`. Execute query by these functions.

`PGSQL_DML_ASYNC` (`int`)

- Passed to `pg_insert`, `pg_select`, `pg_update` and `pg_delete`. Execute asynchronous query by these functions.

`PGSQL_DML_STRING` (`int`)

- Passed to `pg_insert`, `pg_select`, `pg_update` and `pg_delete`. Return executed query string.

`PGSQL_DML_ESCAPE` (`int`)

- Passed to `pg_insert`, `pg_select`, `pg_update` and `pg_delete`. Apply escape to all parameters instead of calling `pg_convert` internally. This option omits meta data look up. Query could be as fast as `pg_query` and `pg_send_query`.

`PGSQL_POLLING_FAILED` (`int`)

- Returned by `pg_connect_poll` to indicate that the connection attempt failed.

`PGSQL_POLLING_READING` (`int`)

- Returned by `pg_connect_poll` to indicate that the connection is waiting for the PostgreSQL socket to be readable.

`PGSQL_POLLING_WRITING` (`int`)

- Returned by `pg_connect_poll` to indicate that the connection is waiting for the PostgreSQL socket to be writable.

`PGSQL_POLLING_OK` (`int`)

- Returned by `pg_connect_poll` to indicate that the connection is ready to be used.

`PGSQL_POLLING_ACTIVE` (`int`)

- Returned by `pg_connect_poll` to indicate that the connection is currently active.

`PGSQL_DIAG_SEVERITY_NONLOCALIZED` (`int`)

- The severity; the field contents are ERROR, FATAL, or PANIC (in an error message), or WARNING, NOTICE, DEBUG, INFO, or LOG (in a notice message). This is identical to the PG_DIAG_SEVERITY field except that the contents are never localized. This is present only in versions 9.6 and later / PHP 7.3.0 and later.

`PGSQL_SHOW_CONTEXT_NEVER` (`int`)

- To be used with `pg_set_error_context_visibility`, the context is never shown. Available as of PHP 8.3.0.

`PGSQL_SHOW_CONTEXT_ERRORS` (`int`)

- To be used with `pg_set_error_context_visibility`, the context's fields are included in error messages only. This is the default behaviour. Available as of PHP 8.3.0.

`PGSQL_SHOW_CONTEXT_ALWAYS` (`int`)

- To be used with `pg_set_error_context_visibility`, the context's fields are included in error, notice and warning messages. Available as of PHP 8.3.0.

`PGSQL_TRACE_SUPPRESS_TIMESTAMPS` (`int`)

- To be used with `pg_trace`, the timestamp is not included in the trace's messages. Available as of PHP 8.3.0.

`PGSQL_TRACE_REGRESS_MODE` (`int`)

- To be used with `pg_trace`, fields such as OIDs are included in the trace's messages. Available as of PHP 8.3.0.