Manuel PHP

Table des matières

Préface
I. Au moment de commencer
II. Installation et configuration
III. Référence du langage
IV. Sécurité
V. Caractéristiques
VI. Référence des fonctions
VII. PHP et le moteur interne Zend
VIII. FAQ : foire Aux Questions
IX. Annexes
Remerciements



XCVII. Fonctions MySQL (PDO_MYSQL)

Introduction

PDO_MYSQL est un pilote qui implémente l’interface de PHP Data Objects (PDO) pour autoriser l’accès de PHP aux bases de données de MySQL 3.x, 4.x. et 5.x.

PDO_MYSQL prendra avantage des requêtes natives préparées présentes dans MySQL 4.1 et supérieur. Si vous utilisez une version plus ancienne des bibliothèques clientes mysql, PDO les émulera pour vous.

Avertissement
Prenez garde : certains types de tables MySQL (moteur d’enregistrement) ne supportent pas les transactions. Lorsque vous écrivez du code de base de données transactionnel en utilisant un type de table qui ne supporte pas les transactions, MySQL prétendra qu’une transaction était initiée correctement. De plus, toutes requêtes DLL publiées enverra implicitement toutes les transactions en attente.

Constantes pré-définies

Les constantes ci-dessous sont définies par ce pilote et seront seulement disponibles lorsque l’extension aura été compilée dans PHP ou chargée dynamiquement du moteur d’exécution. De plus, ces constantes spécifiques au pilote devraient être utilisées seulement si vous utilisez ce pilote. En utilisant les attributs spécifiques à mysql avec le pilote de postgre pourrait causer un comportement inattendu. PDO::getAttribute() pourrait être utilisé pour obtenir l’attribut “PDO_ATTR_DRIVER_NAME” pour vérifier le pilote, si votre code peut fonctionner sur des pilotes multiples.

“PDO::MYSQL_ATTR_USE_BUFFERED_QUERY” (integer)

Si un attribut est fixé à “TRUE” sur une classe PDOStatement, le pilote MySQL utilisera les versions bufférisées de l’API MySQL. Si vous écrivez du code portable, vous devriez utiliser à la place PDOStatement::fetchAll().

Exemple 1. Forçage des requêtes pour être bufférisées dans 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("mon application fonctionne seulement avec mysql; 
         Je devrais utiliser \$stmt->fetchAll() à la place");
}
?>

“PDO::MYSQL_ATTR_LOCAL_INFILE” (entier)

Active “LOAD LOCAL INFILE”.

“PDO::MYSQL_ATTR_INIT_COMMAND” (entier)

Commande à exécuter lors de la connexion au serveur MySQL. Sera automatiquement ré-exécuté lors d’une reconnexion.

“PDO::MYSQL_ATTR_READ_DEFAULT_FILE” (entier)

Lit les options depuis le fichier nommé optionnel, plutôt que depuis “my.cnf”.

“PDO::MYSQL_ATTR_READ_DEFAULT_GROUP” (entier)

Lit les options depuis le groupe nommé du fichier “my.cnf” ou depuis le fichier spécifié par “MYSQL_READ_DEFAULT_FILE”.

“PDO::MYSQL_ATTR_MAX_BUFFER_SIZE” (entier)

Taille maximale du tampon. Par défaut, vaut 1 MiB.

“PDO::MYSQL_ATTR_DIRECT_QUERY” (entier)

Effectue des requêtes directes, sans utiliser de requêtes préparées.

Table des matières

PDO_MYSQL DSN – Connexion aux bases de données MySQL

Travail collaboratif

Contribuez, en ajjoutant des elements a cette page de manuel :

Merci de votre aide
L’equipe Php.fr

 


Index | Afficher le texte source | Anciennes révisions | Derniers changements | Connexion
©2007 Wiki Copyright