3.07. CRUD и DML
Разработчику
Аналитику
Тестировщику
Архитектору
Инженеру
CRUD и DML
★ DML (Data Manipulation Language) в отличие от DDL, выполняет работу не со структурой БД, а непосредственно с данными. В DML SQL оперирует четырьмя главными действиями, известными как CRUD:
- ★ Create – создание;
- ★ Read – чтение;
- ★ Update – обновление;
- ★ Delete – удаление.
Возьмём для примера таблицу users:
| id | name | age | |
|---|---|---|---|
| 1 | Том | 25 | tom@mail.com |
| 2 | Артур | 30 | arthur@mail.com |
CREATE
★ CREATE: Добавление данных.
Добавление данных выполняется путём добавления записи в таблицу, через команду INSERT – нужно указать «INSERT INTO»
INSERT INTO table_name (column1, column2)
VALUES (value1, value2);
Шаблон построения:
INSERT INTO Куда? (Колонки)
VALUES (Значения);
Пример:
INSERT INTO users (name, age, email)
VALUES ('Мария', 22, 'maria@yandex.ru');
В итоге мы получим новую строку:
| id | name | age | |
|---|---|---|---|
| 1 | Том | 25 | tom@mail.com |
| 2 | Артур | 30 | arthur@mail.com |
| 3 | Мария | 22 | maria@yandex.ru |
READ
★ READ: Чтение данных.
Чтение данных выполняется путем выбора данных (получения) через команду SELECT:
SELECT column1, column2 FROM table_name
WHERE condition;
Шаблон построения:
SELECT Колонки FROM Таблица
WHERE Условие;
Пример:
SELECT * FROM users;
* это выбор всех колонок, результат – будут отображены все строки таблицы. Если мы, к примеру, хотим получить только имена и адреса электронной почты, то:
SELECT name, email FROM users;
Если хотим добавить условие, к примеру, старше 25 лет:
SELECT * FROM users WHERE age > 25;
UPDATE
★ UPDATE: Обновление данных.
Обновление данных не добавляет новые записи, а работает с существующими, путем выполнения команды UPDATE:
UPDATE table_name
SET column1 = new_value1, column2 = new_value2
WHERE condition;
Шаблон построения:
UPDATE Таблица
SET Колонка = Значение
WHERE Условие;
Пример:
UPDATE users
SET email = 'tom_new@mail.com'
WHERE id = 1;
После выполнения, у Тома (так как у него Id = 1) изменится запись в столбце email.
Опасно: если забыть WHERE, то обновятся все строки. Так можно сломать базу.
DELETE
★ DELETE: Удаление данных.
Команда DELETE удаляет записи из таблицы:
DELETE FROM table_name
WHERE condition;
Шаблон построения:
DELETE FROM ТАБЛИЦА
WHERE УСЛОВИЕ;
Пример:
DELETE FROM users
WHERE id = 3;
После такой операции, удалится полностью строка с данными Марии.
Опасно: если забыть WHERE, удалятся все строки таблицы.