PDO_MYSQL DSN
(PECL PDO_MYSQL >= 0.1.0)
PDO_MYSQL DSN — Connexion aux bases de données MySQL
Description
Le Data Source Name (DSN) de PDO_MYSQL est composé des éléments suivants :
- Préfixe DSN
-
Le préfixe DSN est
mysql:
. - host
-
L'hôte sur lequel le serveur de base de données se situe.
- port
-
Le numéro de port où le serveur de base de données est en train d'écouter.
- dbname
-
Le nom de la base de données.
- unix_socket
-
Le socket Unix MySQL (ne devrait pas être utilisé avec host ou port).
- charset
-
Le jeu de caractères. Voir la documentation sur les concepts des jeux de caractères pour plus d'informations.
Avant la version 5.3.6 de PHP, cet élément était ignoré. Le même comportement peut être partiellement reproduit avec l'option
PDO::MYSQL_ATTR_INIT_COMMAND
du driver, comme le montre l'exemple suivant.AvertissementLa méthode de l'exemple suivant ne peut être utilisée qu'avec des jeux de caractères qui partagent la même représentation des 7 bits les plus faibles qu'en ASCII, comme ISO-8859-1 et UTF-8. Les utilisateurs utilisant des jeux de caractères ayant une représentation différente (comme UTF-16 ou Big5) doivent utiliser l'option charset fournie depuis la version 5.3.6 de PHP.
Exemple #1 Définition du jeu de caractères pour la connexion à UTF-8 avant PHP 5.3.6
<?php
$dsn = 'mysql:host=localhost;dbname=testdb';
$username = 'username';
$password = 'password';
$options = array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
);
$dbh = new PDO($dsn, $username, $password, $options);
?>
Exemples
Exemple #2 Exemples avec le DSN de PDO_MYSQL
L'exemple suivant montre le DSN PDO_MYSQL pour se connecter aux bases de données MySQL :
mysql:host=localhost;dbname=testdb
mysql:host=localhost;port=3307;dbname=testdb mysql:unix_socket=/tmp/mysql.sock;dbname=testdb
Notes
Note: Unix seulement:
Lorsque le nom d'hôte est "localhost", la connexion est faite par un socket Unix. Si PDO_MYSQL est compilé avec libmysqlclient alors le fichier de socket est celui précisé à la compilation de libmysqlclient. Si PDO_MYSQL est compilé avec mysqlnd, un socket par défaut peut être indiqué via la paramètre pdo_mysql.default_socket.
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-ref.pdo-mysql.connection.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.