Выполнение запросов в PDO. Создание базы данных и таблиц

Последнее обновление: 07.06.2021

Для выполнения запросов к серверу базы данных у объекта PDO вызывается метод exec(), в который передается выполняемое выражение SQL.

$conn = new PDO("mysql:host=localhost", "root", "mypassword");
$conn->exec(команда_sql);

Создание базы данных

Для создания базы данных применяется SQL-команда CREATE DATABASE, после которой указывается имя создаваемой базы данных.

Создадим базу данных через PHP:

<?php
 try {
    // подключаемся к серверу
	$conn = new PDO("mysql:host=localhost", "root", "mypassword");
	
	// SQL-выражение для создания базы данных
	$sql = "CREATE DATABASE testdb1";
	// выполняем SQL-выражение
	$conn->exec($sql);
    echo "Database has been created";
}
catch (PDOException $e) {
    echo "Database error: " . $e->getMessage();
}
?>

В данном случае после подключения к серверу определяется переменная $sql, которая хранит команду на создание бд с именем "textdb1":

$sql = "CREATE DATABASE testdb1";

Далее для выполнения этой команды передаем ее в метод exec():

$conn->exec($sql);

В итоге при успешном создании базы данных мы увидим в браузере сообщение об создании БД:

Database has been created

Создание таблицы

Подобным образом можно выполнять запросы на создание таблиц в базе данных. Для создания таблиц применяется SQL-команда CREATE TABLE, после которой указывается имя создаваемой таблицы и в скобках определения столбцов.

Так, возьмем выше созданную базу данных "testdb1". И создадим в ней таблицу, которая описывается следующим кодом

CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER);

Здесь создается таблица под названием "users". Она будет хранить условных пользователей. В ней будет три столбца: id, name и age. Столбец id представляет числовой уникальный идентификатор строки - или идентификатор пользователя. Столбец name представляет строку - имя пользователя. А столбец age представляет число - возраст пользователя.

Для создания таблицы определим следующий скрипт php:

<?php
try {
    // подключаемся к серверу
	$conn = new PDO("mysql:host=localhost;dbname=testdb1", "root", "mypassword");
	
	// SQL-выражение для создания таблицы
	$sql = "create table users (id integer auto_increment primary key, name varchar(30), age integer);";
	// выполняем SQL-выражение
	$conn->exec($sql);
    echo "Table Users has been created";
}
catch (PDOException $e) {
    echo "Database error: " . $e->getMessage();
}
?>

Обратите внимание, что по сравнению с предыдущим примером здесь в строке подключения указана база данных, в которой создается таблица: "mysql:host=localhost;dbname=testdb1"

И после успешного выполнения запрос мы увидим в браузере сообщение об создании таблицы:

Table Users has been created
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850