SQL-команды: DQL, DDL, DML, DCL и TCL с примерами.

⚡ Умное резюме

Команды SQL сгруппированы в пять подязыков, которые управляют реляционной базой данных. DDL определяет структуру, DML изменяет данные, DCL контролирует доступ, TCL управляет транзакциями, а DQL извлекает данные; каждый из них имеет свой собственный набор операторов и синтаксис.

  • ???? ️ ДДЛ: Параметры CREATE, DROP, ALTER и TRUNCATE определяют и изменяют схему таблиц и баз данных.
  • 🇧🇷 DML: Операторы INSERT, UPDATE и DELETE изменяют строки, содержащиеся в таблице.
  • 🔑 ДКЛ: GRANT и REVOKE предоставляют и отзывают права доступа к объектам базы данных.
  • 🔄 TCL: Команды COMMIT, ROLLBACK и SAVEPOINT управляют способом сохранения или отмены транзакций.
  • 🔍 DQL: Оператор SELECT извлекает строки, отфильтрованные по условиям WHERE.
  • 🇧🇷 Стандартный язык: Все основные СУБД, от MySQL в Oracle и SQL Server, использует SQL.
  • ⚠️ Ключевой контраст: Функции TRUNCATE и DELETE очищают строки, но TRUNCATE — это DDL-операция, а не построчная.

Команды SQL DQL DDL DML DCL TCL

Что такое SQL?

SQL — это язык баз данных, предназначенный для поиска и управления данными в реляционной базе данных.

SQL — это стандартный язык управления базами данных. Все системы РСУБД, такие как MySQL, MS-доступ, OracleSybase, Postgres и SQL Server используют SQL в качестве стандартного языка программирования для работы с базами данных. Язык программирования SQL использует различные команды для выполнения разных операций. Мы изучим команды DCL, TCL, DQL, DDL и DML в SQL на примерах.

Зачем использовать SQL?

Вот важные причины для использования SQL:

  • Это помогает пользователям получать доступ к данным в система РСУБД.
  • Это помогает описать данные.
  • Это позволяет вам определять данные в базе данных и манипулировать этими конкретными данными.
  • С помощью команд SQL можно создавать и удалять базы данных и таблицы.
  • SQL позволяет использовать функции в базе данных, а также создавать представления и хранимые процедуры.
  • Вы можете установить разрешения для таблиц, процедур и представлений.

Краткая история SQL

Вот важные достопримечательности из история SQL:

  • 1970 – Доктор Эдгар Ф. «Тед» Кодд описал реляционную модель баз данных.
  • 1974 год – появился язык структурированных запросов (Structured Query Language), первоначально называвшийся SEQUEL. IBM.
  • 1979 - Oracle выпустила первую коммерчески доступную базу данных на основе SQL, созданную на основе IBMИсследовательский прототип системы R.
  • 1986 год – ANSI опубликовала первый стандарт SQL, SQL-86.
  • 1989 год – вышла первая редакция стандарта SQL-89.
  • 1992 год – SQL-92 (SQL2) стал основной базовой версией, на которую до сих пор ссылается большинство баз данных.
  • 1999 – Выпущен SQL:1999 (SQL3) с такими функциями, как триггеры, рекурсивные запросы и объектно-ориентированное программирование.
  • 2003 – В SQL:2003 были добавлены оконные функции, генераторы последовательностей и возможности, связанные с XML.
  • 2006 – В SQL:2006 добавлена ​​поддержка языка запросов XML (XQuery).
  • 2008 – В SQL:2008 были введены оператор TRUNCATE и триггеры INSTEAD OF.
  • 2011 – В SQL:2011 улучшена поддержка временных баз данных.
  • 2016 – В SQL:2016 добавлена ​​поддержка JSON и сопоставление строк по шаблону (MATCH_RECOGNIZE).
  • 2019 – В стандарт SQL/MDA (Часть 15) добавлена ​​поддержка многомерных массивов.
  • 2023 – В SQL:2023 добавлен собственный тип данных JSON и запросы к графу свойств (SQL/PGQ).
  • 2024 год – GQL, первый новый язык баз данных ISO после SQL, был опубликован в качестве сопутствующего стандарта для запросов к графам.
  • 2026 – SQL:2023 остается действующим стандартом, а следующая редакция находится в разработке в ISO/IEC.

Типы команд SQL

Вот пять типов широко используемых команд SQL:

  • Языка определения данных (DDL)
  • Манипулирование данными Language (DML)
  • Язык управления данными (DCL)
  • Язык управления транзакциями (TCL)
  • Язык запросов данных (DQL)
Типы команд SQL
Типы SQL

В таблице ниже приведено краткое описание пяти категорий, после чего каждая из них рассматривается подробно.

Категория Цель Основные команды
DDL Определить структуру СОЗДАТЬ, УДАИТЬ, ИЗМЕНИТЬ, УДАЛИТЬ
DML Изменить данные ВСТАВИТЬ, ОБНОВИТЬ, УДАЛИТЬ
DCL Контроль доступа ПРЕДОСТАВИТЬ, ОТМЕНИТЬ
TCL Управлять транзакциями ПОДТВЕРЖДЕНИЕ, ОТКАТ, СОХРАНЕНИЕ ТОЧКИ
ДКЛ Получить данные ВЫБОР

Что такое ДДЛ?

Язык определения данных (DDL) помогает определить структуру или схему базы данных. Давайте изучим команды DDL и их синтаксис. Основные команды DDL в SQL — это CREATE, DROP, ALTER и TRUNCATE.

СОЗДАТЬ

Оператор CREATE используется для определения структуры или схемы базы данных:

Синтаксис:

CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);

Например:

Create database university;
Create table students;
Create view for_students;

DROP

Команда DROP удаляет таблицы и базы данных из СУБД.

Синтаксис:

DROP TABLE ;

Например:

Drop object_type object_name;
Drop database university;
Drop table student;

ALTER

Команда ALTER позволяет изменять структуру базы данных.

Синтаксис: Чтобы добавить новый столбец в таблицу:

ALTER TABLE table_name ADD column_name COLUMN-definition;

Чтобы изменить существующий столбец в таблице:

ALTER TABLE MODIFY(COLUMN DEFINITION....);

Например:

Alter table guru99 add subject varchar;

ОБРЕЗАТЬ

Эта команда используется для удаления всех строк из таблицы и освобождения места, содержащего таблицу.

Синтаксис:

TRUNCATE TABLE table_name;

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

TRUNCATE table students;

Что такое язык манипулирования данными?

Язык манипулирования данными (DML) позволяет изменять экземпляр базы данных путем вставки, изменения и удаления данных. Он отвечает за выполнение всех типов изменений данных в базе данных. Важные команды DML в SQL:

  • ВСТАВИТЬ
  • ОБНОВЛЕНИЕ ПО
  • УДАЛИТЬ

ВСТАВИТЬ

Этот оператор используется для вставки данных в строки таблицы.

Синтаксис:

INSERT INTO TABLE_NAME (col1, col2, col3,.... col N)
VALUES (value1, value2, value3, .... valueN);
Or
INSERT INTO TABLE_NAME
VALUES (value1, value2, value3, .... valueN);

Например:

INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');

ОБНОВЛЕНИЕ ПО

Эта команда используется для обновления или изменения значения столбца в таблице.

Синтаксис:

UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]

Например:

UPDATE students
SET FirstName = 'Jhon', LastName= 'Wick'
WHERE StudID = 3;

УДАЛИТЬ

Эта команда используется для удаления одной или нескольких строк из таблицы.

Синтаксис:

DELETE FROM table_name [WHERE condition];

Например:

DELETE FROM students
WHERE FirstName = 'Jhon';

Что такое ДКЛ?

Язык управления данными (DCL) включает в себя такие команды, как GRANT и REVOKE, которые полезны для предоставления прав и разрешений. Другие команды управляют параметрами системы баз данных.

Грант

Эта команда используется для предоставления пользователю прав доступа к базе данных.

Синтаксис:

GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;

Например:

GRANT SELECT ON Users TO'Tom'@'localhost;

Revхорошо

Эта команда полезна для того, чтобы отозвать у пользователя права доступа.

Синтаксис:

REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}

Например:

REVOKE SELECT, UPDATE ON student FROM BCA, MCA;

Что такое ТКЛ?

Команды языка управления транзакциями (TCL) управляют транзакциями внутри базы данных. Они работают непосредственно с состояниями, описанными в разделе... управление транзакциями.

Совершать

Эта команда используется для сохранения всех транзакций в базе данных.

Синтаксис:

Commit;

Например:

DELETE FROM Students
WHERE RollNo =25;
COMMIT;

Отмена

Команда «Откат» позволяет отменить транзакции, которые еще не были сохранены в базе данных.

Синтаксис:

ROLLBACK;

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

DELETE FROM Students
WHERE RollNo =25;

ТОЧКА СОХРАНЕНИЯ

Эта команда позволяет установить точку сохранения в рамках транзакции.

Синтаксис:

SAVEPOINT SAVEPOINT_NAME;

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

SAVEPOINT RollNo;

Что такое ДКЛ?

Язык запросов к данным (DQL) используется для извлечения данных из базы данных. Он использует всего одну команду — SELECT.

ВЫБОР

Эта команда помогает выбрать атрибуты на основе условия, описанного в предложении WHERE.

Синтаксис:

SELECT expressions
FROM TABLES
WHERE conditions;

Например:

SELECT FirstName
FROM Student
WHERE RollNo > 15;

Удалить против Обрезать против Удалить

Все три команды удаляют данные, но различаются тем, что именно они удаляют и можно ли отменить действие. Путаница между ними — распространённая ошибка новичков.

Аспект УДАЛИТЬ ОБРЕЗАТЬ DROP
Категория DML DDL DDL
Удаляет Выбранные строки Все строки Весь стол
Предложение WHERE Разрешено Не положено Непригодный
Отмена Возможное Обычно нет Невозможно
Сохраненная структура Да Да Нет

Вкратце, используйте DELETE для удаления определенных строк, TRUNCATE для быстрой очистки таблицы и DROP для полного удаления таблицы.

Часто задаваемые вопросы (FAQ)

Команда DELETE удаляет выбранные строки и может быть отменена. Команда TRUNCATE удаляет все строки сразу, работает быстрее и обычно не может быть отменена.

Они относятся к языку управления данными (DCL). Команда GRANT предоставляет пользователю привилегии на объект базы данных, а команда REVOKE отменяет эти привилегии, и вместе они контролируют доступ и безопасность.

Да. Модели преобразования текста в SQL преобразуют запрос на естественном языке в оператор SELECT или другое выражение, относящееся к известной схеме. Всегда проверяйте сгенерированный запрос перед его выполнением на рабочих данных.

Да. Анализируя план выполнения, ИИ может предложить индекс, переписанное соединение или изменение условия WHERE, которые снизят затраты. Предложенный вариант следует протестировать, поскольку самый быстрый план зависит от данных.

DDL определяет или изменяет структуру базы данных, например, таблицы и столбцы. DML изменяет данные, хранящиеся в этой структуре, посредством операций INSERT, UPDATE и DELETE. Ключевое различие заключается в структуре и содержимом.

Подведем итог этой публикации следующим образом: