Spec-Zone .ru
спецификации, руководства, описания, API
|
Copyright 1997-2012 PHP Documentation Group.
PDO_MYSQL является драйвером, который реализует
PDO_MYSQL использует в своих интересах собственную готовую поддержку оператора, существующую в MySQL 4.1 и выше. Если Вы будете использовать более старую версию mysql клиентских библиотек, то PDO будет эмулировать их для Вас.
Остерегайтесь: табличные типы MySQL Some (механизмы хранения) не поддерживают транзакции. При записи транзакционного кода базы данных, используя табличный тип, который не поддерживает транзакции, MySQL притворится, что транзакция инициировалась успешно. Кроме того, любые выпущенные запросы DDL будут неявно фиксировать любые транзакции на ожидании.
Использовать --with-pdo-mysql[=DIR]
устанавливать расширение MySQL PDO, где
дополнительное [=DIR]
каталог установки основы MySQL. Если mysqlnd
передают как [=DIR]
, тогда MySQL собственный драйвер будет использоваться.
Дополнительно, --with-mysql-sock[=DIR]
наборы к расположению к unix MySQL снабжают
указатель сокетом для всех расширений MySQL, включая PDO_MYSQL. Если неуказанный, расположения значения по
умолчанию ищутся.
Дополнительно, --with-zlib-dir[=DIR]
используется, чтобы установить путь к префиксу
установки libz.
$ ./configure --with-pdo-mysql --with-mysql-sock=/var/mysql/mysql.sock
Поддержка SSL включается, используя соответствующие константы
PDO_MySQL, который эквивалентен вызову PDO::setAttribute
потому что соединение уже
существует. См. также документацию MySQL о
Таблица 21.60. Журнал изменений
Версия | Описание |
---|---|
5.4.0 | Клиентские библиотеки MySQL 4.1 и ниже больше не поддерживаются. |
5.3.9 | Добавленная поддержка SSL с mysqlnd и OpenSSL. |
5.3.7 | Добавленная поддержка SSL с libmysqlclient и OpenSSL. |
Константы ниже определяются bythis драйвер, и только будут доступны, когда расширение было eithercompiled в PHP
или динамически загрузилось во времени выполнения. Кроме того, thesedriver-специфичные константы должны только
использоваться, если Вы используете этот драйвер. Используя специфичные для драйвера атрибуты с другим драйвером
может закончиться inunexpected поведение. PDO::getAttribute
PDO_ATTR_DRIVER_NAME
припишите проверке thedriver,
если Ваш код может работать против многократных драйверов.
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY
(целое число) Если этот атрибут устанавливается в TRUE
на a PDOStatement
, драйвер MySQL будет использовать буферизованные версии API
MySQL. Если Вы пишете переносимый код, следует использовать PDOStatement::fetchAll
Пример 21.212. Принуждение запросов быть буферизованным в mysql
<?phpif ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') { $stmt = $db->prepare('select * from foo', array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));} else { die("my application only works with mysql; I should use \$stmt->fetchAll() instead");}?>
PDO::MYSQL_ATTR_LOCAL_INFILE
(целое число)
Включить LOAD LOCAL INFILE
.
Отметьте, эта константа может только использоваться в driver_options
выстройте, создавая новый дескриптор базы
данных.
PDO::MYSQL_ATTR_INIT_COMMAND
(целое число)
Команда, чтобы выполниться, соединяясь с сервером MySQL. Будет автоматически повторно выполняться, повторно соединяясь.
Отметьте, эта константа может только использоваться в driver_options
выстройте, создавая новый дескриптор базы
данных.
PDO::MYSQL_ATTR_READ_DEFAULT_FILE
(целое число) Считайте опции из именованного файла опции вместо от my.cnf
. Эта опция
не доступна, если mysqlnd используется, потому что mysqlnd не читает mysql конфигурационные файлы.
PDO::MYSQL_ATTR_READ_DEFAULT_GROUP
(целое число) Считайте опции из именованной группы от my.cnf
или файл, определенный
с MYSQL_READ_DEFAULT_FILE
. Эта опция не доступна, если mysqlnd
используется, потому что mysqlnd не читает mysql конфигурационные файлы.
PDO::MYSQL_ATTR_MAX_BUFFER_SIZE
(целое число) Максимальный размер буфера. Значения по умолчанию к 1 мебибайт. Эта константа не поддерживается когда компилирующийся против mysqlnd.
PDO::MYSQL_ATTR_DIRECT_QUERY
(целое число)
Выполните прямые запросы, не используйте подготовленные операторы.
PDO::MYSQL_ATTR_FOUND_ROWS
(целое число)
Возвратите число найденных (соответствующих) строк, не число измененных строк.
PDO::MYSQL_ATTR_IGNORE_SPACE
(целое число)
Пробелы разрешения после имен функций. Делает все зарезервированные слова имен функций.
PDO::MYSQL_ATTR_COMPRESS
(целое число)
Включите сжатию сетевых коммуникаций. Это не поддерживается когда компилирующийся против mysqlnd.
PDO::MYSQL_ATTR_SSL_CA
(целое число)
Путь к файлу к центру сертификации SSL.
Это существует с PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CAPATH
(целое число)
Путь к файлу к каталогу, который содержит доверяемые сертификаты CA SSL, которые сохранены в формате PEM.
Это существует с PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CERT
(целое число)
Путь к файлу к сертификату SSL.
Это существует с PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CIPHER
(целое число)
Список одного или более допустимых шифров, чтобы использовать для шифрования SSL, в формате, понятом
под OpenSSL. Например: DHE-RSA-AES256-SHA:AES128-SHA
Это существует с PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_KEY
(целое число) Путь к файлу к ключу SSL.
Это существует с PHP 5.3.7.
На поведение этих функций влияют настройки в php.ini
.
Таблица 21.61. Параметры конфигурации PDO_MYSQL
Имя | Значение по умолчанию | Изменчивый |
---|---|---|
pdo_mysql.default_socket | "/tmp/mysql.sock" | PHP_INI_SYSTEM |
pdo_mysql.debug | НУЛЬ | PHP_INI_SYSTEM |
Вот короткое объяснение конфигурационных директив.
pdo_mysql.default_socket
строка Устанавливает сокет домена Unix. Это значение может или быть установлено во время компиляции, если сокет домена находится в, конфигурируют. Этой установкой ini является Unix только.
pdo_mysql.debug
булев Позволяет отладить для PDO_MYSQL. Эта установка только доступна, когда PDO_MYSQL компилируется против mysqlnd и в режиме отладки PDO.