XOOPS Brasil

 

MySQL Functions (PDO_MYSQL)

Introdução

PDO_MYSQL é um driver que implementa a interface PHP Data Objects (PDO) para acesso do PHP ao MySQL 3.x, 4.x and 5.x.

PDO_MYSQL tem vantagens do nativo suporte a prepared statement presente no MySQL 4.1 e superior. Se você está usando um versão antiga da biblioteca do mysql client, PDO irá emular para você.

Aviso

Cuidado: Alguns tipos de table do MySQL (storage engines) não suportam transações. Quando escrevendo código para um banco de dados transacional onde o tipo de tabela não suporta transações, MySQL irá pretender que a transação foi inicializada com sucesso. Adicionalmente, qualquer DDL queries serão implicitamente aceitas sem pedir confirmação.

Constantes pré-definidas

As constantes abaixo são definidas por este driver, e somente estarão disponíveis quando esta extensão for compilada no PHP ou carregada dinamicamente em tempo de execução. Em adição, estas constantes especificas do drive somente devem ser usadas se você estive usando este drive. Usar atributos especificos do mysql com o driver postgree pode resultar em um funcionamento não esperado. PDO::getAttribute() deve ser usado para obter o atributo PDO_ATTR_DRIVER_NAME para se certificar do driver, se o seu código puder ser usado com vários drivers.

PDO::MYSQL_ATTR_USE_BUFFERED_QUERY (integer)
Se este atributo é definido para TRUE em uma PDOStatement, o driver MySQL irá usar a versão bufferizada da MySQL API. Se você está escrevendo um código portável, você deveria usar PDOStatement::fetchAll().

Exemplo #3 Forçando queries para ser bufferizadas no 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)

Comando para executar quando conectado ao servidor MySQL. Irá automaticamente ser reexecutado quando reconectar.

PDO::MYSQL_ATTR_READ_DEFAULT_FILE (integer)

Lê opções do nomeado arquivo de opções ao invés do my.cnf.

PDO::MYSQL_ATTR_READ_DEFAULT_GROUP (integer)

Lê opções do nomeado group para my.cnf ou o arquivo especificado com MYSQL_READ_DEFAULT_FILE.

PDO::MYSQL_ATTR_MAX_BUFFER_SIZE (integer)

Tamanho máximo do buffer. Padrão é 1 MiB.

PDO::MYSQL_ATTR_DIRECT_QUERY (integer)

Executa queries diretamente, não usa prepared statements.

Índice