SQL в настоящее время является промышленным стандартом, который в большей или меньшей степени поддерживает любая СУБД, претендующая на звание "реляционной".
Хотя SQL стандартизован, любая его версия отличается от стандарта. Бывает, что одни и те же конструкции не работают на разных платформах. Сам SQL покрывает все подмножество реляционной алгебры. И считается, что на нем можно написать любую реляционную БД.
Можно выделить следующие группы операторов:
DDL (data definition language) – операторы определения объектов БД.
GRANT – предоставить привилегии пользователю или приложению на
манипулирование объектами,
REVOKE – отменить привилегию.
CREATE TABLE <имя таблицы> (Имя столбца1, тип столбца1 [NOT NULL],…, Имя столбца n, тип столбца n [NOT NULL])
Тип столбца:
CHAR (m) – строка символов длиной m (240 – max),
NUMBER – числовые значения (+ или -, м.б. десятичная точка, не более 40 цифр),
NUMBER (m) – m – количество цифр (m<=40),
NUMBER (m,d) – d – количество знаков после запятой,
DATE – календарные даты.
Предположим, надо создать следующую таблицу:
Номер темы
Название
Бюджет
a
250’000
b
175’000
g
95’000
CREATE TABLE Themes <BK>
(Theme_number NUMBER (3) NOT_NULL, <BK>, Name CHAR (10), <BK>, Budget NUMBER (8,2)); <BK>
Рассмотрим еще один пример:
SQL> CREATE TABLE Сотрудники
(Таб_номер NUMBER (6),
Фамилия CHAR (15),
Должность CHAR (15),
Руководитель NUMBER (6),
Дата_приема DATE,
Оклад NUMBER (6,2),
Премия NUMBER (5,2),
Отдел NUMBER (3));
Спецификация максимальных длин не означает обязательного соответствующего расходования физической памяти БД.
Вставка записей в таблицу осуществляется с помощью оператора INSERT, который позволяет добавлять к таблицам одну или несколько записей. При добавлении одной записи оператор INSERT имеет формат:
INSERT INTO <имя таблицы>
(имя столбца 1,… ,имя столбца n)
VALUES (значение 1,… ,значение n);
В результате выполнения этого оператора к таблице, имя которой указано после слова INTO, добавляется одна запись. Для добавления записи заполняются поля перечисленные в списке. Значения полей берутся из списка, расположенного после слова VALUES. Списки полей и списки значений должны соответствовать друг другу по числу и по типу их элементов. При присвоении значений для первого поля берется первое значение, для второго – второе и т. д. В команде INSERT можно указывать имена только тех столбцов, в которые вводятся значения, остальные столбцы остаются пустыми, т.е. принимают значение NULL.
Пример. Добавляем информацию в таблицу ‘’Сотрудники’’:
Порядок ввода значений должен соответствовать объявленному порядку столбцов в таблице. В команде INSERT можно указывать не все столбцы, которые окажутся пустыми.
Пример:
INSERT INTO Сотрудники (ТабНомер, Фамилия, Дата приема, Отдел)