Урок 18: Создание БД и таблиц
В предыдущем уроке мы узнали, как создать соединение с сервером БД. Следующий шаг - создание БД и таблиц.
Рассмотрим два способа создания БД и таблиц. Первый, как это делается в PHP, второй - с помощью более дружественной утилиты PhpMyAdmin, которая является стандартной на большинстве вэб-хостов и в XAMPP.
Если у вас на хосте есть сайт с поддержкой PHP и MySQL, БД, возможно, уже создана для вас, и вы можете пропустить это раздел урока и начать создавать таблицы. Не забывайте консультироваться со страницами помощи хоста.
Создание БД и таблиц с помощью PHP
Функция mysql_query используется для отправки запроса БД MySQL. Запросы записываются на языке Structured Query Language (SQL). SQL - наиболее широко распространённый язык запросов БД - не только для БД MySQL - он очень логичен и прост для изучения. В этом и следующем уроках вы узнаете всё самое важное о SQL-запросах.
При создании БД используется SQL-запрос CREATE DATABASE с таким синтаксисом:
CREATE DATABASE имя БД
Легко и просто, не так ли!? Попробуем вставить это в PHP-скрипт:
mysql_connect("mysql.myhost.com", "user", "sesame") or die(mysql_error()); mysql_query("CREATE DATABASE mydatabase") or die(mysql_error()); mysql_close();
Сначала соединяемся с MySQL-сервером. Затем создаём БД "mydatabase". И наконец - закрываем соединение с MySQL-сервером.
Пока неплохо... но всё несколько усложняется, когда мы хотим создать таблицы в PHP. При создании таблиц мы используем SQL-запрос CREATE TABLE с таким синтаксисом:
CREATE TABLE имя таблицы ( имя_столбца1 ТИП_ДАННЫХ, имя_столбца2 ТИП_ДАННЫХ, имя_столбца3 ТИП_ДАННЫХ, ... )
имя_таблицы и имя_столбца это, понятное дело, соответствующие имена. ТИП_ДАННЫХ используется для специфицирования типа данных, вставляемых в столбец. Вот наиболее распространённые типы:
- INT
- Целые числа
- DECIMAL
- Десятичные числа
- CHAR
- Краткий текст до 255 символов длиной
- TEXT
- Обычный текст до 65,535 символов
- LONGTEXT
- Длинные куски текста до 4,294,967,295 символов
- Date
- Даты в формате ГГГГ-MM-ДД
- Time
- Время в формате ЧЧ:MM:СС
- DATETIME
- Время и дата в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС
В целом логично и относительно просто. Попробуем вставить это в наш пример:
mysql_connect("mysql.myhost.com", "user", "sesame") or die(mysql_error()); mysql_select_db("people") or die(mysql_error()); mysql_query("CREATE TABLE MyTable ( id INT AUTO_INCREMENT, FirstName CHAR, LastName CHAR, Phone INT, BirthDate DATE PRIMARY KEY(id) )") Or die(mysql_error()); mysql_close ();
В этом примере мы начинаем с соединения с MySQL-сервером. Затем используем функцию mysql_select_db для выбора БД "people". Далее создаём таблицу "persons" из 5 столбцов.
Обратите внимание, что для столбца "id" мы используем INT для специфицирования того, что столбец содержит числа, а затем добавляем AUTO_INCREMENT для автоматического инкремента этих чисел и гарантирования тог, что для каждого ряда будет сгенерирован уникальный ID.
В конце мы используем PRIMARY KEY для установки столбца "id" как первичного ключа/primary key. Первичный ключ уникально идентифицирует каждую запись (/ряд) в таблице, что особенно пригодится при последующих обновлениях БД.
Создание БД и таблиц с использованием phpMyAdmin
Бывает полезно иметь возможность создавать БД и таблицы напрямую в PHP. Но часто проще использовать phpMyAdmin (или любую иную утилиту администрирования MySQL), которая является стандартной на большинстве вэб-хостов и в XAMPP. Скриншот ниже показывает, как создавать БД и таблицы с применением phpMyAdmin.
Начинаем со входа в phpMyAdmin. Часто адрес - тот же, что и для вашего MySQL-сервера (например, "http://mysql.myhost.com"), с теми же username и password. В XAMPP адрес: http://localhost/phpmyadmin/
Если вы вошли, просто введите имя БД и нажмите кнопку "Create":
На некоторых хостах БД уже могут быть созданы, и у вас может не быть прав создавать новые. Если это так, вы, очевидно, можете использовать только уже назначенную БД.
Для создания таблицы щёлкните вкладку "Databases" и выберите БД, щёлкнув на ней:
Затем появится бокс "Create new table in database", где вы вводите имя таблицы и количество столбцов и нажимаете "Go":
Далее вы можете именовать столбцы и указать типы данных etc., как в предыдущем примере с SQL.
Заметьте, что здесь мы так же устанавливаем "id" как PRIMARY KEY используем AUTO_INCREMENT (A_I).
Теперь у вас создана собственная БД и таблица. В следующих уроках мы разберёмся, как вставлять, запрашивать и удалять данные в БД.