MySQL – система управления базами данных с открытым исходным кодом, которая помогает пользователям хранить, систематизировать и извлекать данные. Данное руководство представляет собой основные инструкции по работе с этой мощной и гибкой программой.
Чтобы установить MySQL на сервер, обратитесь к руководствам:
Доступ к MySQL
После установки MySQL на сервер введите следующую команду в терминал, чтобы получить доступ к оболочке MySQL:
mysql -u root -p
Введя root-пароль MySQL (не спутайте с root-паролем сервера), приступайте к созданию базы данных MySQL.
Запомните две вещи:
- Все команды MySQL заканчиваются символом точки с запятой (;). Команда, в конце которой данный символ отсутствует, не будет выполнена.
- Кроме того, команды MySQL, как правило, пишутся верхним регистром, а базы данных, таблицы, имена пользователей и текст – нижним регистром, чтобы их было легче различать (хотя это не обязательно). Однако командная строка MySQL нечувствительна к регистру.
Создание и удаление базы данных MySQL
MySQL организовывает всю информацию в базы данных, каждая из которых может содержать таблицы с конкретными данными.
Чтобы быстро проверить доступные базы данных, наберите:
SHOW DATABASES;
Результат выглядит примерно так:
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.01 sec)
Создать базу данных в MySQL очень просто:
CREATE DATABASE имя базы данных;
Для примера создайте базу данных по имени “events”.
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| events |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
Для удаления ненужных объектов в MySQL, как правило, используют команду Drop. Чтобы удалить БД, введите:
DROP DATABASE имя базы данных;
Доступ к базе данных MySQL
Создав БД, можно начать заполнять ее информацией.
Для начала нужно создать таблицу.
Откройте нужную БД (в данном случае это тестовая БД events):
USE events;
Просмотреть существующие в БД таблицы можно таким же способом, как и проверить имеющиеся базы данных:
SHOW tables;
Поскольку это новая БД, в ней нет таблиц, потому MySQL ответит “Empty set”.
Создание таблицы MySQL
Предположим, вы собрались встретиться с друзьями. Можно использовать MySQL для отслеживания сведений о событии.
Создайте новую таблицу MySQL:
CREATE TABLE potluck (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
food VARCHAR(30),
confirmed CHAR(1),
signup_date DATE);
Эта команда выполняет следующие действия:
- Создает таблицу с именем Potluck в каталоге events.
- Создает 5 столбцов таблицы: id, name, food, confirmed и signup date В графе “id” есть команда (INT NOT NULL PRIMARY KEY AUTO_INCREMENT), которая автоматически нумерует каждую строку.
- В столбце “name” используется команда VARCHAR, которая ограничивает ввод до 20 символов.
- Столбец «food» содержит перечень продуктов, которые должен принести каждый человек. Команда VARCHAR ограничивает ввод до 30 символов.
- Столбец “confirmed” указывает, получил ли тот или иной человек приглашение (Y или N).
- Столбец “date” показывает, когда гости подтвердили приглашение. MySQL требует, чтобы даты были записаны в виде гггг-мм-дд.
Снова запустите команду SHOW TABLES:
mysql> SHOW TABLES;
+------------------+
| Tables_in_events |
+------------------+
| potluck |
+------------------+
1 row in set (0.01 sec)
Чтобы MySQL напоминал о созданной таблице, используйте следующую команду:
DESCRIBE potluck;
Примечание: Хотя командная строка MySQL не различает регистров, имена таблиц и баз данных нужно вводить с учетом регистра (potluck – не то же самое, что POTLUCK или Potluck).
mysql>DESCRIBE potluck;
+-------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | YES | | NULL | |
| food | varchar(30) | YES | | NULL | |
| confirmed | char(1) | YES | | NULL | |
| signup_date | date | YES | | NULL | |
+-------------+-------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)
Добавление данных в таблицу MySQL
Теперь вся информация о событии может храниться в таблице; перейдите к заполнению созданной таблицы.
Для внесения информации используйте следующий формат:
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "John", "Casserole","Y", '2012-04-11');
После внесения информации в таблицу должно появиться сообщение:
Query OK, 1 row affected (0.00 sec)
Внесите в эту таблицу еще несколько строк:
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Sandy", "Key Lime Tarts","N", '2012-04-14');
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Tom", "BBQ","Y", '2012-04-18');
INSERT INTO `potluck` (`id`,`name`,`food`,`confirmed`,`signup_date`) VALUES (NULL, "Tina", "Salad","Y", '2012-04-10');
Просмотрите таблицу:
mysql> SELECT * FROM potluck;
+----+-------+----------------+-----------+-------------+
| id | name | food | confirmed | signup_date |
+----+-------+----------------+-----------+-------------+
| 1 | John | Casserole | Y | 2012-04-11 |
| 2 | Sandy | Key Lime Tarts | N | 2012-04-14 |
| 3 | Tom | BBQ | Y | 2012-04-18 |
| 4 | Tina | Salad | Y | 2012-04-10 |
+----+-------+----------------+-----------+-------------+
4 rows in set (0.00 sec)
Обновление данных в таблице
При необходимости данные, внесенные в таблицу, можно обновлять.
К примеру, нужно изменить значение столбца confirmed (N на Y).
UPDATE `potluck`
SET
`confirmed` = 'Y'
WHERE `potluck`.`name` ='Sandy';
Кроме того, данный синтаксис можно использовать для внесения информации в пустые ячейки.
Добавление и удаление столбцов
Теперь, когда удобная таблица создана, стало ясно, что ей не хватает некоторых важных сведений – электронных адресов приглашенных.
Эти данные можно легко добавить:
ALTER TABLE potluck ADD email VARCHAR(40);
Данная команда создаст столбец “email” в конце таблицы (по умолчанию), а команда VARCHAR ограничит количество символов до 40.
При необходимости столбец можно разместить в любой части таблицы; для этого нужно добавить к команде еще одну фразу.
ALTER TABLE potluck ADD email VARCHAR(40) AFTER name;
Теперь новый столбец “email” следует за столбцом “name”.
Столбцы можно также удалять:
ALTER TABLE potluck DROP email;
Удаление строк
Кроме того, с помощью следующей команды можно удалять строки таблицы:
DELETE from [имя таблицы] where [имя строки]=[текст];
Например, чтобы удалить строку №2, нужно набрать:
mysql> DELETE from potluck where name='Sandy';
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM potluck;
+----+------+-----------+-----------+-------------+
| id | name | food | confirmed | signup_date |
+----+------+-----------+-----------+-------------+
| 1 | John | Casserole | Y | 2012-04-11 |
| 3 | Tom | BBQ | Y | 2012-04-18 |
| 4 | Tina | Salad | Y | 2012-04-10 |
+----+------+-----------+-----------+-------------+
3 rows in set (0.00 sec)
Обратите внимание: номера строк не изменились.