PHP MySQL Database

PHP + MySQL створення таблиць Бази Даних

Матеріал представлений на сторінці є моїм перекладом ресурсу w3schools.com/php/php_ref_mysqli.asp

PHP MySQL Database

Таблиці Бази Даних мають своє власне унікальне ім'я і складаються з колонок та рядків.


Створення таблиці Бази Даних використовуючи MySQLi та PDO

Вираз CREATE TABLE використовується для створення таблиці Бази Даних застосовуючи систему MySQL.
Наступний приклад створює таблицю "MyGuests", що має п'ять колонок: "id", "firstname", "lastname", "email" та "reg_date":

CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)

Примітка, щодо поданої вище таблиці:    Тип даних вказує який тип даних повинна зберігати колонка таблиці. Переглянути які типи даних можуть застосовуватись.
   Після типу даних Ви можете зазначити інші необов'язкові атрибути для кожної колонки:
- NOT NULL - рядок таблиці повинен мати значення, нульове значення не допускається
- DEFAULT value - Значення даних що може встановлюватись за замовчуванням
- UNSIGNED - застосовується для числових значень, обмежує дані до додатніх та нуля
- AUTO INCREMENT - MySQL автоматично збільшує значення поля на 1 при внесенні кожного нового значення даних
- PRIMARY KEY - використовується для однозначної ідентифікації даних рядка таблиці. Колонка PRIMARY KEY часто використовується з ідентифікатором ID та AUTO_INCREMENT.

Кожна таблиця повинна мати колонку з первинним ключем - primary key ( в даному випадку колоонка "id" ). Його значення має бути унікальне для кожного запису в таблиці.
Для вказаного вище SQL-запиту php-код матиме вигляд:

MySQLi об'єктно-орієнтований стиль кодування

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Створюємо з'єднання
$conn = new mysqli($servername, $username, $password, $dbname);

// Перевіряємо з'єднання
if ($conn->connect_error) {
die("Помилка з'єднання: " . $conn->connect_error);
}

// sql для створення таблиці
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";

if ($conn->query($sql) === TRUE) {
echo "Таблиця MyGuests успішно створена";
} else {
echo "Помилка створення таблиці: " . $conn->error;
}

$conn->close();
?>



MySQLi процедурний стиль кодування

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Створюємо з'єднання
$conn = mysqli_connect($servername, $username, $password, $dbname);

// Перевіряємо з'єднання
if (!$conn) {
die("Помилка з'єднання: " . mysqli_connect_error());
}

// sql створення таблиці
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";

if (mysqli_query($conn, $sql)) {
echo "Таблиця MyGuests успішно створена";
} else {
echo "Помилка створення таблиці: " . mysqli_error($conn);
}

mysqli_close($conn);
?>



PDO стиль кодування

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

try {
       $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);

       // встановлення PDO на випадок помилки з'єднання ( exception )
       $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
      // sql створення таблиці
      $sql = "CREATE TABLE MyGuests (
       id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
       firstname VARCHAR(30) NOT NULL,
       lastname VARCHAR(30) NOT NULL,
       email VARCHAR(50),
       reg_date TIMESTAMP
       )";

       // використовуємо exec() тому, що відсутня результуюча вибірка даних
       $conn->exec($sql);
       echo "Таблиця успішно створена";
       }

catch(PDOException $e)
       {
       echo $sql . "
" . $e->getMessage();        }

$conn = null;
?>