Описание : в этой статье мы покажем вам, как использовать PHP для создания таблицы базы данных MySQL с помощью PDO API.
Ниже приведены шаги, чтобы показать вам, как создать новую таблицу в базе данных:
Мы создадим новую таблицу с именем andreyex в примере базы данных с помощью следующего сценария SQL:
CREATE TABLE IF NOT EXISTS andreyex ( 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 );
Сначала мы создаем класс с именованными параметрами CreateTableDemo конфигурации БД. В конструкторе класса CreateTableDemo мы открываем соединение с образцом базы данных, создавая экземпляр нового объекта PDO.
<?php /** * PHP MySQL Create Table Demo */ class CreateTableDemo { /** * host базы данных */ const DB_HOST = 'localhost'; /** * имя базы данных */ const DB_NAME = 'classicmodels'; /** * пользователь базы данных */ const DB_USER = 'root'; /* * пароль базы данных */ const DB_PASSWORD = ''; /** * * @var type */ private $pdo = null; /** * Открыть подключение к базе данных */ public function __construct() { // открыть подключение к базе данных $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(); } } //... }
Далее в деструкторе класса CreateTabledemo мы закрываем соединение с базой данных, присваивая ему значение null.
/** * закройте соединение с базой данных */ public function __destruct() { // close the database connection $this->pdo = null; }
Затем определите метод createTaskTable() для создания таблицы andreyex:
/** * создание таблицы andreyex * @return boolean, возвращает true при успешном выполнении или false при сбое */ public function createTaskTable() { $sql = <<<EOSQL CREATE TABLE IF NOT EXISTS andreyex ( 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); }
Чтобы выполнить оператор SQL, вы вызываете метод exec() объекта PDO. После этого вы можете создать экземпляр класса CreateTableDemo и вызвать метод createTaskTable().
// создание таблицы andreyex $obj = new CreateTableDemo(); $obj->createTaskTable();
Наконец, вы можете проверить пример базы данных classicmodels, чтобы увидеть, была ли таблица andreyex создана.
В этой статье мы шаг за шагом показали, как использовать объект PDO для создания таблицы в базе данных MySQL.