&reftitle.constants; &pdo.driver-constants;

`PDO::MYSQL_ATTR_USE_BUFFERED_QUERY` (`bool`)

- By default all statements are executed in buffered mode. If this attribute is set to &false; on a `PDO` object, the MySQL driver will use the unbuffered mode.

  ## Setting MySQL unbuffered mode

      <?php
      $pdo = new PDO("mysql:host=localhost;dbname=world", 'my_user', 'my_password');
      $pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);

      $unbufferedResult = $pdo->query("SELECT Name FROM City");
      foreach ($unbufferedResult as $row) {
          echo $row['Name'] . PHP_EOL;
      }
      ?>

`PDO::MYSQL_ATTR_LOCAL_INFILE` (`int`)

- Enable `LOAD LOCAL INFILE`.

  Note, this constant can only be used in the `driver_options` array when constructing a new database handle.

`PDO::MYSQL_ATTR_LOCAL_INFILE_DIRECTORY` (`string`)

- Allows restricting LOCAL DATA loading to files located in this designated directory. Available as of PHP 8.1.0.

  Note, this constant can only be used in the `driver_options` array when constructing a new database handle.

`PDO::MYSQL_ATTR_INIT_COMMAND` (`string`)

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

  Note, this constant can only be used in the `driver_options` array when constructing a new database handle.

`PDO::MYSQL_ATTR_READ_DEFAULT_FILE` (`int`)

- Read options from the named option file instead of from `my.cnf`. This option is not available if mysqlnd is used, because mysqlnd does not read the mysql configuration files.

`PDO::MYSQL_ATTR_READ_DEFAULT_GROUP` (`int`)

- Read options from the named group from `my.cnf` or the file specified with `MYSQL_READ_DEFAULT_FILE`. This option is not available if mysqlnd is used, because mysqlnd does not read the mysql configuration files.

`PDO::MYSQL_ATTR_MAX_BUFFER_SIZE` (`int`)

- Maximum buffer size. Defaults to 1 MiB. This constant is not supported when compiled against mysqlnd.

`PDO::MYSQL_ATTR_DIRECT_QUERY` (`int`)

- Perform direct queries, don't use prepared statements.

`PDO::MYSQL_ATTR_FOUND_ROWS` (`int`)

- Return the number of found (matched) rows, not the number of changed rows.

`PDO::MYSQL_ATTR_IGNORE_SPACE` (`int`)

- Permit spaces after function names. Makes all functions names reserved words.

`PDO::MYSQL_ATTR_COMPRESS` (`int`)

- Enable network communication compression.

`PDO::MYSQL_ATTR_SSL_CA` (`int`)

- The file path to the SSL certificate authority.

`PDO::MYSQL_ATTR_SSL_CAPATH` (`int`)

- The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format.

`PDO::MYSQL_ATTR_SSL_CERT` (`int`)

- The file path to the SSL certificate.

`PDO::MYSQL_ATTR_SSL_CIPHER` (`int`)

- A list of one or more permissible ciphers to use for SSL encryption, in a format understood by OpenSSL. For example: `DHE-RSA-AES256-SHA:AES128-SHA`

`PDO::MYSQL_ATTR_SSL_KEY` (`int`)

- The file path to the SSL key.

`PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT` (`int`)

- Provides a way to disable verification of the server SSL certificate.

  &version.exists.asof; 7.0.18 and PHP 7.1.4.

`PDO::MYSQL_ATTR_MULTI_STATEMENTS` (`int`)

- Disables multi query execution in both `PDO::prepare` and `PDO::query` when set to &false;.

  Note, this constant can only be used in the `driver_options` array when constructing a new database handle.