DDL/DML/TML SQL-запросы
Data Definition Language, Data Manipulation Language и Transaction Management Language являются подмножествами языка SQL, используемыми для разных целей.
DDL
Data Definition Language — язык определения данных. DDL используется для создания, изменения и удаления структур данных, таких как таблицы и индексы. Примеры DDL-запросов:
Примеры DDL-запросов:
CREATE TABLE: Создает новую таблицу с указанными столбцами и типами данных.
CREATE TABLE users (
id INT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL
);
ALTER TABLE: Изменяет существующую таблицу, добавляя или удаляя столбцы или индексы.
ALTER TABLE users ADD COLUMN age INT;
ALTER TABLE users DROP COLUMN age;
DROP TABLE: Удаляет существующую таблицу и все ее данные.
DROP TABLE users;
DML
Data Manipulation Language — язык манипулирования данными. DML используется для вставки, обновления, выборки и удаления данных из таблиц.
Примеры DML-запросов:
SELECT: Извлекает данные из одной или нескольких таблиц.
SELECT id, username, email FROM users;
SELECT * FROM users WHERE age > 30;
INSERT: Добавляет новые строки в таблицу.
INSERT INTO users (id, username, email) VALUES (1, 'JohnDoe', 'john.doe@example.com');
UPDATE: Изменяет существующие данные в таблице.
UPDATE users SET email = 'john.doe@newexample.com' WHERE id = 1;
DELETE: Удаляет строки из таблицы.
DELETE FROM users WHERE id = 1;
TML
Transaction Management Language — язык управления транзакциями. TML используется для контроля транзакций, что позволяет гарантировать целостность данных.
Примеры TML-запросов:
BEGIN TRANSACTION: Начинает новую транзакцию.
BEGIN TRANSACTION;
COMMIT: Завершает текущую транзакцию и фиксирует изменения данных.
COMMIT;
ROLLBACK: Откатывает текущую транзакцию и отменяет все изменения данных, сделанные с момента начала транзакции.
ROLLBACK;
SAVEPOINT: Создает контрольную точку в текущей транзакции, к которой можно вернуться в дальнейшем.
SAVEPOINT my_savepoint;
ROLLBACK TO: Откатывает текущую транзакцию до указанной контрольной точки.
ROLLBACK TO my_save точки;
RELEASE: Удаляет контрольную точку, освобождая ресурсы, связанные с ней.
RELEASE my_savepoint;
Все эти запросы используются для работы с данными в базе данных. DDL-запросы определяют структуру данных, DML-запросы изменяют данные, а TML-запросы контролируют транзакции, обеспечивая их целостность и согласованность. Важно знать и понимать, как использовать каждый тип запроса в зависимости от вашей задачи для эффективного взаимодействия с базой данных.