PHP MySQL : Créer une nouvelle table

(Dernière mise à jour le: 23 septembre 2021)

Résumé : dans ce tutoriel, nous allons vous montrer comment utiliser PHP pour créer une table de base de données MySQL en utilisant l’API PDO.

Voici les étapes pour vous montrer comment créer une nouvelle table dans une base de données :

  • Ouvrez une connexion de base de données au serveur de base de données MySQL.
  • Exécutez l’ instruction CREATE TABLE pour créer de nouvelles tables.

PHP MySQL : exemple de création de table

Nous allons créer une nouvelle table nommée tasksdans la base de données exemple avec le script SQL suivant :

CREATE TABLE IF NOT EXISTS tasks ( 
task_id INT AUTO_INCREMENT PRIMARY KEY, 
subject VARCHAR (255) DEFAULT NULL, 
start_date DATE DEFAULT NULL, 
end_date DATE DEFAULT NULL, 
description VARCHAR (400) DEFAULT NULL );

Tout d’abord, nous créons une classe nommée CreateTableDemoqui a des paramètres de configuration de base de données. Dans le constructeur de la CreateTableDemoclasse, nous ouvrons une connexion à la base de données exemple en instanciant un nouvel objet PDO.

<?php

/**
* PHP MySQL Create Table Demo
*/
class CreateTableDemo {

/**
* database host
*/
const DB_HOST = 'localhost';

/**
* database name
*/
const DB_NAME = 'classicmodels';

/**
* database user
*/
const DB_USER = 'root';
/*
* database password
*/
const DB_PASSWORD = '';

/**
*
* @var type 
*/
private $pdo = null;

/**
* Open the database connection
*/
public function __construct() {
// open database connection
$conStr = sprintf("mysql:host=%s;dbname=%s", self::DB_HOST, self::DB_NAME);
try {
$this->pdo = new PDO($conStr, self::DB_USER, self::DB_PASSWORD);
} catch (PDOException $e) {
echo $e->getMessage();
}
}

//...
}

Ensuite, dans le destructeur de la CreateTabledemoclasse, nous fermons la connexion à la base de données en lui attribuant la  nullvaleur.

 /**
* close the database connection
*/
public function __destruct() {
// close the database connection
$this->pdo = null;
}

Ensuite, définissez la createTaskTable()méthode pour créer la taskstable :

/**
* create the tasks table
* @return boolean returns true on success or false on failure
*/
public function createTaskTable() {
$sql = <<<EOSQL
CREATE TABLE IF NOT EXISTS tasks (
task_id INT AUTO_INCREMENT PRIMARY KEY,
subject VARCHAR (255) DEFAULT NULL,
start_date DATE DEFAULT NULL,
end_date DATE DEFAULT NULL,
description VARCHAR (400) DEFAULT NULL
);
EOSQL;
return $this->pdo->exec($sql);
}

Pour exécuter une instruction SQL, vous appelez la exec()  méthode de l’objet PDO. Après cela, vous pouvez créer une instance de la CreateTableDemoclasse et appeler la createTaskTable()méthode.

// create the tasks table
$obj = new CreateTableDemo();
$obj->createTaskTable();

Enfin, vous pouvez vérifier la classicmodelsbase de données exemple pour voir si la taskstable a été créée.

 MySQL PHP Phpmyadmin
 MySQL PHP Phpmyadmin
FaiblePa malMoyenIntéressantExilent (No Ratings Yet)
Loading...

Laisser un commentaire

Translate »