PHP 手册
上一页 |  | 下一页

# XCIX. MySQL Functions (PDO_MYSQL)

# 简介

PDO_MYSQL is a driver that implements the PHP Data Objects (PDO) interface to enable access from PHP to MySQL 3.x, 4.x and 5.x databases.

PDO_MYSQL will take advantage of native prepared statement support present in MySQL 4.1 and higher. If you're using an older version of the mysql client libraries, PDO will emulate them for you.

警告
Beware: Some MySQL table types (storage engines) do not support transactions. When writing transactional database code using a table type that does not support transactions, MySQL will pretend that a transaction was initiated successfully. In addition, any DDL queries issued will implicitly commit any pending transactions.

# 预定义常量

以下常量由本驱动程序所定义，并且仅在该扩展库被编译入 PHP 或在运行时动态加载时可用。此外，这些驱动程序特定的常量应仅在使用此驱动程序时被使用。在 Postgres 驱动下使用 MySQL 特定的属性可能会导致不可预期的行为。在代码可以运行于多个驱动程序下时，可以用 PDO::getAttribute() 来取得 `PDO_ATTR_DRIVER_NAME` 属性以检查驱动程序。

`PDO::MYSQL_ATTR_USE_BUFFERED_QUERY` (integer)

  If this attribute is set to `TRUE` on a PDOStatement, the MySQL driver will use the buffered versions of the MySQL API. If you're writing portable code, you should use PDOStatement::fetchAll() instead.

  例 1. Forcing queries to be buffered in mysql

  `<?php if ($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` (integer)

  Enable `LOAD LOCAL INFILE`.

`PDO::MYSQL_ATTR_INIT_COMMAND` (integer)

  Command to execute when connecting to the MySQL server. Will automatically be re-executed when reconnecting.

`PDO::MYSQL_ATTR_READ_DEFAULT_FILE` (integer)

  Read options from the named option file instead of from `my.cnf`.

`PDO::MYSQL_ATTR_READ_DEFAULT_GROUP` (integer)

  Read options from the named group from `my.cnf` or the file specified with `MYSQL_READ_DEFAULT_FILE`.

`PDO::MYSQL_ATTR_MAX_BUFFER_SIZE` (integer)

  Maximum buffer size. Defaults to 1 MiB.

`PDO::MYSQL_ATTR_DIRECT_QUERY` (integer)

  Perform direct queries, don't use prepared statements.

上一页 | 起始页 | 下一页
mysql_unbuffered_query | 上一级 | PDO_MYSQL DSN