Предопределенные константы
Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.
Внимание
PDO использует константы класса с PHP 5.1. До этого использовались глобальные
константы в форме PDO_PARAM_BOOL
.
-
PDO::PARAM_BOOL
(int) - Представляет логический тип данных.
-
PDO::PARAM_NULL
(int) - Представляет тип данных SQL NULL.
-
PDO::PARAM_INT
(int) - Представляет тип данных SQL INTEGER.
-
PDO::PARAM_STR
(int) - Представляет типы данных SQL CHAR, VARCHAR и другие строковые типы.
-
PDO::PARAM_STR_NATL
(int) - Флаг для обозначения, что строки используют национальный набор символов. Константа доступна с версии PHP 7.2.0
-
PDO::PARAM_STR_CHAR
(int) - Флаг для обозначения, что строки используют обычный набор символов. Константа доступна с версии PHP 7.2.0
-
PDO::PARAM_LOB
(int) - Представляет тип данных больших объектов SQL.
-
PDO::PARAM_STMT
(int) - Представляет тип recordset. На данный момент не поддерживается драйверами.
-
PDO::PARAM_INPUT_OUTPUT
(int) - Указывает, что параметр является параметром INOUT для хранимой процедуры. Для задания типа данных необходимо применить побитовое ИЛИ этой константы с константой типа PDO::PARAM_*.
-
PDO::FETCH_LAZY
(int) -
Указывает, что метод, осуществляющий выборку данных, должен возвращать
каждую строку выборки в виде объекта, в котором имена переменных соответствуют
именам столбцов результирующего набора.
PDO::FETCH_LAZY
создает объект с такими же именами переменных, с которыми осуществлялась выборка. Константа недействительна для функции PDOStatement::fetchAll(). -
PDO::FETCH_ASSOC
(int) -
Указывает, что метод, осуществляющий выборку данных, должен возвращать
каждую строку результирующего набора в виде ассоциативного массива, индексы
которого соответствуют именам столбцов результата выборки. Если в
результирующем наборе несколько столбцов с одинаковыми именами,
PDO::FETCH_ASSOC
будет возвращать по одному значению для каждого столбца. Значения дублирующихся столбцов будут утеряны. -
PDO::FETCH_NAMED
(int) -
Указывает, что метод, осуществляющий выборку данных, должен возвращать
каждую строку результирующего набора в виде ассоциативного массива, индексы
которого соответствуют именам столбцов результата выборки. Если в
результирующем наборе несколько столбцов с одинаковыми именами,
PDO::FETCH_NAMED
возвращает массив значений для каждого имени столбца. -
PDO::FETCH_NUM
(int) - Указывает, что метод, осуществляющий выборку данных, должен возвращать каждую строку результирующего набора в виде массива, индексы которого соответствуют порядковым номерам столбцов результата выборки. Нумерация начинается с 0.
-
PDO::FETCH_BOTH
(int) - Указывает, что метод, осуществляющий выборку данных, должен возвращать каждую строку результирующего набора в виде массива. Индексация массива производится и по именам столбцов и по их порядковым номерам в результирующей таблице. Нумерация начинается с 0.
-
PDO::FETCH_OBJ
(int) - Указывает, что метод, осуществляющий выборку данных, должен возвращать каждую строку результирующего набора в виде объекта, имена свойств которого соответствуют именам столбцов результирующей таблицы.
-
PDO::FETCH_BOUND
(int) - Указывает, что метод, осуществляющий выборку данных, должен возвращать TRUE и присваивать значения столбцов таблицы переменным PHP, которые были привязаны методами PDOStatement::bindParam() или PDOStatement::bindColumn().
-
PDO::FETCH_COLUMN
(int) - Указывает, что метод, осуществляющий выборку данных, должен возвращать значение только одного столбца из следующей строки результирующего набора.
-
PDO::FETCH_CLASS
(int) -
Указывает, что метод, осуществляющий выборку данных, должен возвращать
новый объект запрашиваемого класса, заполняя именованные свойства класса
значениями столбцов результирующей таблицы.
Замечание: Если в классе нет свойства с необходимым именем, будет вызван магический метод __set().
-
PDO::FETCH_INTO
(int) - Указывает, что метод, осуществляющий выборку данных, должен обновлять существующий объект запрашиваемого класса, заполняя именованные свойства класса значениями столбцов результирующей таблицы.
-
PDO::FETCH_FUNC
(int) - Позволяет настроить обработку данных "на лету" во время выборки (константа действительна только для функции PDOStatement::fetchAll()).
-
PDO::FETCH_GROUP
(int) -
Группировка возвращаемых значений. Обычно комбинируется с константами
PDO::FETCH_COLUMN
илиPDO::FETCH_KEY_PAIR
. -
PDO::FETCH_UNIQUE
(int) - Выбирать только уникальные значения, исключать дубли из результата.
-
PDO::FETCH_KEY_PAIR
(int) - Выборка из двух столбцов будет помещена в массив, в котором значения первого столбца принимаются за ключи, а значения второго - за значения. Константа доступна с версии PHP 5.2.3.
-
PDO::FETCH_CLASSTYPE
(int) - Определение имени класса по значению первого столбца.
-
PDO::FETCH_SERIALIZE
(int) -
Аналогична
PDO::FETCH_INTO
, но объект представлен в виде сериализованной строки. Константа доступна с версии PHP 5.1.0. С версии PHP 5.3.0 конструктор класса не будет вызван, если этот флаг установлен. -
PDO::FETCH_PROPS_LATE
(int) - Вызывать конструктор до установки свойств. Константа доступна с версии PHP 5.2.0.
-
PDO::ATTR_AUTOCOMMIT
(int) -
Если значение
false
, PDO попытается отключить автоматическую фиксацию изменений в базе данных, таким образом началом транзакции будет установление соединения. -
PDO::ATTR_PREFETCH
(int) - Изменение размера буфера предвыборки позволяет регулировать баланс между затрачиваемой памятью и скоростью работы с базой данных. Не все связки база/драйвер поддерживают изменение размера этого буфера. Чем больше этот размер, тем выше быстродействие, но и выше затраты памяти.
-
PDO::ATTR_TIMEOUT
(int) - Задает время в секундах, в течение которого должен быть завершен обмен с базой данных.
-
PDO::ATTR_ERRMODE
(int) - Подробно об этом атрибуте см. раздел Ошибки и их обработка.
-
PDO::ATTR_SERVER_VERSION
(int) - Этот атрибут предназначен только для чтения; он содержит информацию о версии сервера баз данных, к которому подключен PDO.
-
PDO::ATTR_CLIENT_VERSION
(int) - Этот атрибут предназначен только для чтения; он содержит информацию о версии клиентских библиотек, которые использует драйвер PDO.
-
PDO::ATTR_SERVER_INFO
(int) - Этот атрибут предназначен только для чтения; он содержит информацию о сервере баз данных, к которому подключен PDO.
-
PDO::ATTR_CONNECTION_STATUS
(int) -
PDO::ATTR_CASE
(int) -
Приведение имен столбцов к нужному регистру, который задается константами
PDO::CASE_*
. -
PDO::ATTR_CURSOR_NAME
(int) - Получение или установке имени курсора. Особенно полезно при использовании прокручиваемых курсоров или обновления данных в конкретных позициях.
-
PDO::ATTR_CURSOR
(int) -
Выбор типа курсора. PDO на данный момент поддерживает
PDO::CURSOR_FWDONLY
иPDO::CURSOR_SCROLL
. Если вы не уверены, что вам нужен именно прокручиваемый курсор, выбирайтеPDO::CURSOR_FWDONLY
. -
PDO::ATTR_DRIVER_NAME
(string) -
Возвращает имя драйвера.
Пример #1 Пример использования
PDO::ATTR_DRIVER_NAME
<?php
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
echo "Работаем с mysql; делаем что-то специфичное для mysql\n";
}
?> -
PDO::ATTR_ORACLE_NULLS
(int) - Преобразование пустых строк в SQL NULL в выборках.
-
PDO::ATTR_PERSISTENT
(mixed) - Запрашивать постоянное соединение вместо создания нового подключения. Подробнее об этом атрибуте см. раздел Подключения и управление подключениями.
-
PDO::ATTR_STATEMENT_CLASS
(int) - Устанавливает имя класса, для которого возвращаются запросы (statements).
-
PDO::ATTR_FETCH_CATALOG_NAMES
(int) - Предписание предварять имена столбцов именами каталогов в результирующем наборе. Имя столбца отделяется от имени каталога десятичной точкой (.). Поддержка этого атрибута заложена на уровне драйвера; этот функционал поддерживается не всеми драйверами.
-
PDO::ATTR_FETCH_TABLE_NAMES
(int) - Предписание предварять имена столбцов именами исходных таблиц в результирующем наборе. Имя столбца отделяется от имени таблицы десятичной точкой (.). Поддержка этого атрибута заложена на уровне драйвера; этот функционал поддерживается не всеми драйверами.
-
PDO::ATTR_STRINGIFY_FETCHES
(int) - Принудительно преобразовывать все получаемые значения в строки.
-
PDO::ATTR_MAX_COLUMN_LEN
(int) - Устанавливает максимальную длину имени столбца.
-
PDO::ATTR_DEFAULT_FETCH_MODE
(int) - Константа доступна с версии PHP 5.2.0
-
PDO::ATTR_EMULATE_PREPARES
(int) - Константа доступна с версии PHP 5.1.3.
-
PDO::ATTR_DEFAULT_STR_PARAM
(int) -
Устанавливает по умолчанию тип параметра строку, значением может быть одна из констант:
PDO::PARAM_STR_NATL
илиPDO::PARAM_STR_CHAR
. Константа доступна с версии PHP 7.2.0. -
PDO::ERRMODE_SILENT
(int) - Предписание не выбрасывать исключений в случае ошибок. Предполагается, что разработчик скрипта явно проверяет все исключительные ситуации. Это режим по умолчанию. Подробнее об этом атрибуте см. в разделе Ошибки и их обработка.
-
PDO::ERRMODE_WARNING
(int) -
Предписание выдавать сообщение об ошибке PHP уровня
E_WARNING
. Подробнее об этом атрибуте см. в разделе Ошибки и их обработка. -
PDO::ERRMODE_EXCEPTION
(int) - Предписание выбрасывать исключение PDOException в случае ошибки. Подробнее об этом атрибуте см. в разделе Ошибки и их обработка.
-
PDO::CASE_NATURAL
(int) - Предписание оставлять имена столбцов такими, какие выдал драйвер базы данных.
-
PDO::CASE_LOWER
(int) - Приводить имена столбцов к нижнему регистру.
-
PDO::CASE_UPPER
(int) - Приводить имена столбцов к верхнему регистру.
-
PDO::NULL_NATURAL
(int) -
PDO::NULL_EMPTY_STRING
(int) -
PDO::NULL_TO_STRING
(int) -
PDO::FETCH_ORI_NEXT
(int) - Предписание выбрать следующую строку из результирующего набора. Константа действительна только для прокручиваемых курсоров.
-
PDO::FETCH_ORI_PRIOR
(int) - Предписание выбрать предыдущую строку из результирующего набора. Константа действительна только для прокручиваемых курсоров.
-
PDO::FETCH_ORI_FIRST
(int) - Предписание выбрать первую строку из результирующего набора. Константа действительна только для прокручиваемых курсоров.
-
PDO::FETCH_ORI_LAST
(int) - Предписание выбрать последнюю строку из результирующего набора. Константа действительна только для прокручиваемых курсоров.
-
PDO::FETCH_ORI_ABS
(int) - Предписание выбрать строку с указанным номером из результирующего набора. Константа действительна только для прокручиваемых курсоров.
-
PDO::FETCH_ORI_REL
(int) - Предписание выбрать строку из результирующего набора относительно текущего положения курсора. Константа действительна только для прокручиваемых курсоров.
-
PDO::CURSOR_FWDONLY
(int) - Предписание создать объект PDOStatement с последовательным курсором. Последовательные курсоры выбираются по умолчанию, так как это наиболее общий и быстрый способ доступа к данным в БД из PHP.
-
PDO::CURSOR_SCROLL
(int) -
Предписание создать объект PDOStatement с
прокручиваемым курсором. Передача констант
PDO::FETCH_ORI_*
позволяет задать режим работы курсора, то, как будут выбираться строки из результирующего набора запроса. -
PDO::ERR_NONE
(string) - Соответствует коду SQLSTATE '00000'. Это означает, что SQL-запрос выполнен успешно без ошибок или предупреждений. Эта константа внедрена для удобства при проверке, есть ли ошибки, функциями PDO::errorCode() или PDOStatement::errorCode(). Также можно проверять, есть ли ошибка внутри метода, сравнивая его код возврата с этой константой.
-
PDO::PARAM_EVT_ALLOC
(int) - Событие, возникающее при выделении памяти под объект
-
PDO::PARAM_EVT_FREE
(int) - Событие, возникающее при освобождении занимаемой объектом памяти
-
PDO::PARAM_EVT_EXEC_PRE
(int) - Событие, возникающее перед запуском подготовленного запроса.
-
PDO::PARAM_EVT_EXEC_POST
(int) - Событие, возникающее после запуска подготовленного запроса.
-
PDO::PARAM_EVT_FETCH_PRE
(int) - Событие, возникающее перед выборкой данных из результирующего набора.
-
PDO::PARAM_EVT_FETCH_POST
(int) - Событие, возникающее после выборки данных из результирующего набора.
-
PDO::PARAM_EVT_NORMALIZE
(int) - Событие, возникающее во время регистрации параметров, позволяющее драйверу нормализовать имена параметров.
-
PDO::SQLITE_DETERMINISTIC
(int) - Указывает, что функция созданная PDO::sqliteCreateFunction() детерминированна, то есть она всегда возвращает одинаковый результат для для одинаковых входных данных в одном выражении SQL. (Доступно с PHP 7.1.4.)