Création d’une table MySQL avec PDO
Dans ce tutoriel nous allons découvrir comment créer une table MySQL avec PDO. Une table de base de données a son propre nom unique et se compose de colonnes et de lignes.
Pour créer une nouvelle table dans une base de données, on utilise l’instruction CREATE TABLE. L’instruction SQL suivante crée la table « Users »:
CREATE TABLE Users ( id INT(3) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(50) NOT NULL, lastname VARCHAR(50) NOT NULL, address VARCHAR(250) )
Nous exécutons cette instructions SQL pour créer la table « Users » via un outil en ligne de commande ou un outil d’interface graphique MySQL. Pourtant, nous allons utiliser l’API PDO pour créer des tables avec PHP.
Script pour créer une table MySQL avec PDO
<?php $host='localhost'; $dbname = 'test'; $username = 'root'; $password = ''; try{ $dsn = "mysql:host=$host;dbname=$dbname"; $pdo = new PDO($dsn, $username, $password); $sql = <<<EOSQL CREATE TABLE Users ( id INT(3) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(50) NOT NULL, lastname VARCHAR(50) NOT NULL, address VARCHAR(250) ) ENGINE=InnoDB EOSQL; $msg = ''; $res = $pdo->exec($sql); if($res !== false){ $msg = "La table Users est créée avec succès!"; }else{ $msg = "Erreur lors de la création de la table Users."; } // afficher le message if($msg != '') echo $msg; }catch (PDOException $e){ echo $e->getMessage(); } ?>
Comment cela fonctionne!
- Nous avons créé une connexion à la base de données MySQL en instanciant une instance de la classe PDO et en transmettant l’argument $dsn à son constructeur.
- Ensuite, nous avons spécifié l’instruction SQL qui crée la table « Users ».
- Enfin, nous appelons la méthode exec() de la classe PDO pour exécuter l’instructions SQL.