Введение
В этом проекте вы научитесь выполнять различные операции DDL (язык определения данных) с базой данных MySQL. Вы создадите базу данных, таблицы, измените структуры таблиц, удалите данные и удалите таблицы и базы данных.
👀 Предварительный просмотр



🎯 Задачи
В этом проекте вы научитесь:
- Как запустить службу MySQL и получить доступ к базе данных с использованием команды
sudo - Как создать базу данных с определенной кодировкой символов
- Как создавать таблицы с различными типами данных и первичными ключами
- Как изменять структуры таблиц, например, делать первичные ключи автоинкрементируемыми
- Как удалять данные из таблиц с использованием
DELETEиTRUNCATE - Как удалять таблицы и базы данных
🏆 Достижения
После завершения этого проекта вы сможете:
- Разобраться в основных операциях DDL в MySQL
- Создавать и управлять базами данных и таблицами
- Изменять структуры таблиц, чтобы соответствовать вашим потребностям
- Эффективно удалять данные из таблиц
- Удалять таблицы и базы данных при необходимости
Запустить MySQL и получить доступ к базе данных
В этом шаге вы научитесь запускать службу MySQL и получать доступ к базе данных с использованием команды sudo без пароля.
- Запустите службу MySQL с использованием следующей команды:
sudo service mysql start
- Получите доступ к базе данных MySQL с использованием команды
sudoбез пароля:
sudo mysql
Теперь вы готовы перейти к следующему шагу.
Создать базу данных и таблицы
В этом шаге вы научитесь создавать базу данных testddl с указанной кодировкой символов utf8mb4, а затем создавать таблицы emp и dept внутри базы данных.
- Создайте базу данных
testddlс указанной кодировкой символовutf8mb4:
CREATE DATABASE IF NOT EXISTS `testddl` DEFAULT CHARACTER SET utf8mb4;
- Используйте базу данных
testddl:
USE `testddl`;
- Создайте таблицу
empсо следующей структурой:
CREATE TABLE `emp` (
`eid` int(5) NOT NULL,
`ename` varchar(50),
`sal` DECIMAL,
`deptno` int(5),
PRIMARY KEY (`eid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- Создайте таблицу
deptсо следующей структурой:
CREATE TABLE `dept` (
`did` int(5) NOT NULL,
`dname` varchar(50) DEFAULT NULL,
PRIMARY KEY (`did`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Теперь вы создали базу данных testddl и таблицы emp и dept. Перейдем к следующему шагу.
Изменить таблицы
В этом шаге вы научитесь изменить первичные ключи таблиц emp и dept так, чтобы они были автоинкрементируемыми, начиная с 10. Также вы измените тип данных поля sal в таблице emp на целое число.
- Измените первичный ключ таблицы
empтак, чтобы он был автоинкрементируемым, начиная с10:
ALTER TABLE `emp` AUTO_INCREMENT=10;
- Измените первичный ключ таблицы
deptтак, чтобы он был автоинкрементируемым, начиная с10:
ALTER TABLE `dept` AUTO_INCREMENT=10;
- Измените тип данных поля
salв таблицеempна целое число:
ALTER TABLE `emp` MODIFY `sal` INT(5);
Теперь первичные ключи таблиц emp и dept автоинкрементируются, начиная с 10, и тип данных поля sal в таблице emp изменен на целое число.
Удалить данные из таблиц
В этом шаге вы научитесь удалять все данные из таблиц emp и dept.
- Удалите все данные из таблицы
empс использованием инструкцииDELETE:
DELETE FROM `emp`;
- Удалите все данные из таблицы
deptс использованием инструкцииTRUNCATE:
TRUNCATE TABLE `dept`;
Теперь таблицы emp и dept пусты.
Удалить таблицу и базу данных
В этом финальном шаге вы научитесь удалять таблицу emp и базу данных testddl.
- Удалите таблицу
emp:
DROP TABLE `emp`;
- Удалите базу данных
testddl:
DROP DATABASE `testddl`;
Вы можете ознакомиться с следующим выводом:
MariaDB [(none)]> USE `testddl`;
Database changed
MariaDB [testddl]> CREATE TABLE `emp` (
-> `eid` int(5) NOT NULL,
-> `ename` varchar(50),
-> `sal` DECIMAL,
-> `deptno` int(5),
-> PRIMARY KEY (`eid`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.005 sec)
MariaDB [testddl]> CREATE TABLE `dept` (
-> `did` int(5) NOT NULL,
-> `dname` varchar(50) DEFAULT NULL,
-> PRIMARY KEY (`did`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.004 sec)
MariaDB [testddl]> desc emp;
+--------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+---------------+------+-----+---------+-------+
| eid | int(5) | NO | PRI | NULL | |
| ename | varchar(50) | YES | | NULL | |
| sal | decimal(10,0) | YES | | NULL | |
| deptno | int(5) | YES | | NULL | |
+--------+---------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
MariaDB [testddl]> ALTER TABLE `emp` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.005 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> ALTER TABLE `dept` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.003 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> ALTER TABLE `emp` MODIFY `sal` INT(5);
Query OK, 0 rows affected (0.006 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> desc emp;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| eid | int(5) | NO | PRI | NULL | |
| ename | varchar(50) | YES | | NULL | |
| sal | int(5) | YES | | NULL | |
| deptno | int(5) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
MariaDB [testddl]> DELETE FROM `emp`;
Query OK, 0 rows affected (0.000 sec)
MariaDB [testddl]> TRUNCATE TABLE `dept`;
Query OK, 0 rows affected (0.003 sec)
MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept |
| emp |
+-------------------+
2 rows in set (0.000 sec)
MariaDB [testddl]> DROP TABLE `emp`;
Query OK, 0 rows affected (0.002 sec)
MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept |
+-------------------+
1 row in set (0.000 sec)
MariaDB [testddl]> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| testddl |
+--------------------+
5 rows in set (0.000 sec)
MariaDB [testddl]> DROP DATABASE `testddl`;
Query OK, 1 row affected (0.004 sec)
MariaDB [(none)]> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.000 sec)
Поздравляем! Вы завершили комплексный вызов по DDL. Вы узнали, как создавать базу данных, создавать таблицы, изменять структуры таблиц, удалять данные из таблиц и удалять таблицы и базы данных.********
Резюме
Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.



