SQL позволяет не только извлекать данные, но и определять структуру данных, добавлять, удалять данные, ограничивать или предоставлять доступ к данным, поддерживать ссылочную целостность.
SQL содержит примерно 40 операторов для выполнения различных действий внутри СУБД большинство из которых представляют собой разного рода манипуляции с данными и метаданными. Эти операторы подразделяются на несколько категорий, которые кратко рассматриваются ниже.
Data Definition Language (DDL)содержит операторы, позволяющие создавать, изменять и уничтожать базы данных и объекты внутри них (таблицы, представления и др)
Create Table - Добавление новой таблицы к базе
Drop Table - Удаление таблицы из базы данных
Alter Table - Изменение структуры имеющейся таблицы
Create View - Добавление нового представления к базе данных
Drop View - Удаление представления из базы данных
Create Index - Создание индекса для данного поля
Drop Index - Удаление существующего индекса
CREATE SCHEMA - Создание новой схемы в базе данных
Data Manipulation Language (DML)содержит операторы, позволяющие выбирать, добавлять, удалять и модифицировать данные. Обратите внимание на то, что эти операторы не обязательно должны завершать транзакцию, внутри которой or. вызваны.
Insert - Добавление строк к таблице
Delete - Удаление строк из таблицы
Update - Изменение данных
Иногда оператор SELECT относят к отдельной категории, называемой Data Query Language (DQL).J
Data Control Language (DCL), иногда называемые операторами Access Control Language, применяются для осуществления административных функций, присваивающих или отменяющих право (привилегию) использовать базу данных, таблицы в базе данных, а также выполнять те или иные операторы SQL.
Grant - Присвоение привилегии.
Revoke - Отмена привилегии.
Транзакция – группа операций над данными, которые либо выполняются, либо отменяются все вместе. Завершение транзакции означает, что все ее операции завершены, и результат их работы сохранен в базе данных. Откат транзакции означает, что все уже выполненные операции, входящие в состав транзакции, отменяются, и все объекты базы данных возвращаются в исходное состояние (для этого СУБД ведет журнал транзакций). Транзакция может состоять из нескольких вложенных транзакций. Некоторые СУБД поддерживают двухфазное завершение транзакций – процесс, позволяющий осуществлять транзакции над несколькими БД, относящимися к одной и той же СУБД. Для поддержки распределенных транзакций (над базами данных, управляемых разными СУБД) используются мониторы транзакций.