The Pdo\Pgsql class

Introduction

A PDO subclass representing a connection using the PostgreSQL PDO driver.

This driver supports a dedicated SQL query parser for the PostgreSQL dialect. It can handle the following:

  • Single and double-quoted literals, with doubling as escaping mechanism
  • C-style “escape” string literals
  • Dollar-quoted string literals
  • Two-dashes and C-style comments (non-nested).
  • Support for ?? as escape sequence for the ? operator.

Class synopsis

Pdo\Pgsql
extends PDO
/* Inherited constants */
public const int PDO::PARAM_NULL;
public const int PDO::PARAM_BOOL = 5;
public const int PDO::PARAM_INT = 1;
public const int PDO::PARAM_STR = 2;
public const int PDO::PARAM_LOB = 3;
public const int PDO::PARAM_STMT = 4;
public const int PDO::PARAM_INPUT_OUTPUT;
public const int PDO::PARAM_STR_NATL;
public const int PDO::PARAM_STR_CHAR;
public const int PDO::PARAM_EVT_ALLOC;
public const int PDO::PARAM_EVT_FREE;
public const int PDO::PARAM_EVT_EXEC_PRE;
public const int PDO::PARAM_EVT_EXEC_POST;
public const int PDO::PARAM_EVT_FETCH_PRE;
public const int PDO::PARAM_EVT_FETCH_POST;
public const int PDO::PARAM_EVT_NORMALIZE;
public const int PDO::FETCH_DEFAULT;
public const int PDO::FETCH_LAZY;
public const int PDO::FETCH_ASSOC;
public const int PDO::FETCH_NUM;
public const int PDO::FETCH_BOTH;
public const int PDO::FETCH_OBJ;
public const int PDO::FETCH_BOUND;
public const int PDO::FETCH_COLUMN;
public const int PDO::FETCH_CLASS;
public const int PDO::FETCH_INTO;
public const int PDO::FETCH_FUNC;
public const int PDO::FETCH_GROUP;
public const int PDO::FETCH_UNIQUE;
public const int PDO::FETCH_KEY_PAIR;
public const int PDO::FETCH_CLASSTYPE;
public const int PDO::FETCH_SERIALIZE;
public const int PDO::FETCH_PROPS_LATE;
public const int PDO::FETCH_NAMED;
public const int PDO::ATTR_AUTOCOMMIT;
public const int PDO::ATTR_PREFETCH;
public const int PDO::ATTR_TIMEOUT;
public const int PDO::ATTR_ERRMODE;
public const int PDO::ATTR_SERVER_VERSION;
public const int PDO::ATTR_CLIENT_VERSION;
public const int PDO::ATTR_SERVER_INFO;
public const int PDO::ATTR_CONNECTION_STATUS;
public const int PDO::ATTR_CASE;
public const int PDO::ATTR_CURSOR_NAME;
public const int PDO::ATTR_CURSOR;
public const int PDO::ATTR_ORACLE_NULLS;
public const int PDO::ATTR_PERSISTENT;
public const int PDO::ATTR_STATEMENT_CLASS;
public const int PDO::ATTR_FETCH_TABLE_NAMES;
public const int PDO::ATTR_FETCH_CATALOG_NAMES;
public const int PDO::ATTR_DRIVER_NAME;
public const int PDO::ATTR_STRINGIFY_FETCHES;
public const int PDO::ATTR_MAX_COLUMN_LEN;
public const int PDO::ATTR_EMULATE_PREPARES;
public const int PDO::ATTR_DEFAULT_FETCH_MODE;
public const int PDO::ATTR_DEFAULT_STR_PARAM;
public const int PDO::ERRMODE_SILENT;
public const int PDO::ERRMODE_WARNING;
public const int PDO::ERRMODE_EXCEPTION;
public const int PDO::CASE_NATURAL;
public const int PDO::CASE_LOWER;
public const int PDO::CASE_UPPER;
public const int PDO::NULL_NATURAL;
public const int PDO::NULL_EMPTY_STRING;
public const int PDO::NULL_TO_STRING;
public const string PDO::ERR_NONE;
public const int PDO::FETCH_ORI_NEXT;
public const int PDO::FETCH_ORI_PRIOR;
public const int PDO::FETCH_ORI_FIRST;
public const int PDO::FETCH_ORI_LAST;
public const int PDO::FETCH_ORI_ABS;
public const int PDO::FETCH_ORI_REL;
public const int PDO::CURSOR_FWDONLY;
public const int PDO::CURSOR_SCROLL;
/* Constants */
public const int Pdo\Pgsql::ATTR_DISABLE_PREPARES;
public const int Pdo\Pgsql::ATTR_RESULT_MEMORY_SIZE;
public const int Pdo\Pgsql::TRANSACTION_IDLE;
public const int Pdo\Pgsql::TRANSACTION_ACTIVE;
public const int Pdo\Pgsql::TRANSACTION_INTRANS;
public const int Pdo\Pgsql::TRANSACTION_INERROR;
public const int Pdo\Pgsql::TRANSACTION_UNKNOWN;
/* Methods */
public bool Pdo\Pgsql::copyFromArray(
    string $tableName,
    array $rows,
    string $separator = "\t",
    string $nullAs = "\\\\N",
    stringnull $fields = null
)
public bool Pdo\Pgsql::copyFromFile(
    string $tableName,
    string $filename,
    string $separator = "\t",
    string $nullAs = "\\\\N",
    stringnull $fields = null
)
public arrayfalse Pdo\Pgsql::copyToArray(
    string $tableName,
    string $separator = "\t",
    string $nullAs = "\\\\N",
    stringnull $fields = null
)
public bool Pdo\Pgsql::copyToFile(
    string $tableName,
    string $filename,
    string $separator = "\t",
    string $nullAs = "\\\\N",
    stringnull $fields = null
)
public string Pdo\Pgsql::escapeIdentifier(string $input)
public arrayfalse Pdo\Pgsql::getNotify(int $fetchMode = PDO::FETCH_DEFAULT, int $timeoutMilliseconds = 0)
public int Pdo\Pgsql::getPid()
public stringfalse Pdo\Pgsql::lobCreate()
public resourcefalse Pdo\Pgsql::lobOpen(string $oid, string $mode = "rb")
public bool Pdo\Pgsql::lobUnlink(string $oid)
public void Pdo\Pgsql::setNoticeCallback(callablenull $callback)
/* Inherited methods */
public __construct(
    string $dsn,
    stringnull $username = null,
    #[\SensitiveParameter]stringnull $password = null,
    arraynull $options = null
)
public bool beginTransaction()
public bool commit()
public static static connect(
    string $dsn,
    stringnull $username = null,
    #[\SensitiveParameter]stringnull $password = null,
    arraynull $options = null
)
public stringnull errorCode()
public array errorInfo()
public intfalse exec(string $statement)
public mixed getAttribute(int $attribute)
public static array getAvailableDrivers()
public bool inTransaction()
public stringfalse lastInsertId(stringnull $name = null)
public PDOStatementfalse prepare(string $query, array $options = [])
public PDOStatementfalse query(string $query, intnull $fetchMode = null)
public PDOStatementfalse query(string $query, intnull $fetchMode = PDO::FETCH_COLUMN, int $colno)
public PDOStatementfalse query(
    string $query,
    intnull $fetchMode = PDO::FETCH_CLASS,
    string $classname,
    array $constructorArgs
)
public PDOStatementfalse query(string $query, intnull $fetchMode = PDO::FETCH_INTO, object $object)
public stringfalse quote(string $string, int $type = PDO::PARAM_STR)
public bool rollBack()
public bool setAttribute(int $attribute, mixed $value)

Predefined Constants

Pdo\Pgsql::ATTR_DISABLE_PREPARES
Send the query and the parameters to the server together in a single call, avoiding the need to create a named prepared statement separately. If the query is only going to be executed once this can reduce latency by avoiding an unnecessary server round-trip.
Pdo\Pgsql::ATTR_RESULT_MEMORY_SIZE
Returns the amount of memory, in bytes, allocated to the specified query result PDOStatement instance, or null if no results exist before the query is executed.
Pdo\Pgsql::TRANSACTION_IDLE
Pdo\Pgsql::TRANSACTION_ACTIVE
Pdo\Pgsql::TRANSACTION_INTRANS
Pdo\Pgsql::TRANSACTION_INERROR
Pdo\Pgsql::TRANSACTION_UNKNOWN
Table of Contents