ОператорCREATE используется для создания объектов базы данных.
К ним относятся:
TABLE – таблица базы данных;
VIEW – представление или вид, представляет собой виртуальную таблицу, которая строится на основе выбранной в результате выполнения запроса информации из одной или нескольких таблиц;
SEQUENCE – последовательность, последовательно выбираемые зна-чения которой можно использовать для задания уникальных значений ключа;
INDEX – индекс, используемый для обеспечения более быстрого дос-тупа к данным таблицы;
TRIGGER – хранимая в базе данных программная единица, запускае-маяORACLE автоматически при наступлении определенных событий;
FUNCTION – хранимая в базе данных программная единица, вызы-ваемая пользователем или другими программными единицами для вы-полнения;
PROCEDURE – хранимая в базе данных программная единица, вызы-ваемая пользователем или другими программными единицами для вы-полнения;
USER – имя пользователя, имеющего доступ к информации базы дан-ных;
ROLE – совокупность определенных привилегий, обеспечивающих возможность создания, удаления и модификации объектов базы данных.
ОператорALTER используется для изменения объектов базы данных. Применяется по отношению ко всем перечисленным выше объектам.
ОператорDROP применяется для удаления всех вышеперечисленных объектов из базы данных.
ОператорGRANT позволяет наделить роль или пользователя различ-ного вида привилегиями или ролями.
ОператорREVOKE отменяет предоставленные пользователям или ролям привилегии и роли.
ОператорыDML.
К этой группе относятся операторы:
INSERT, DELETE, UPDATE, SELECT.
Первые три оператора позволяют осуществить соответственно встав-ку, удаление и модификацию строк таблиц. ОператорSELECT предна-значен для построения запросов, в результате выполнения которых из таблиц выбирается вся необходимая информация. Запрос на выборку информации, включенный в запись некоторого другого оператора, обра-зует подзапрос.
Операторы управления транзакциями. К этой группе относятся следующие операторы:
COMMIT – фиксация текущей транзакции;
ROLLBACK – откат текущей транзакции;
Транзакция представляет собой неделимую с точки зрения системы единицу работы, выполняемую системой. В случае успешного выполне-ния всех входящих в транзакцию действий ее результаты фиксируются (COMMIT). В противном случае состояние базы данных можно вернуть в исходное состояние, отменив транзакцию(ROLLBACK).
Операторы управления сеансом работы изменяют установки, зада-ваемые для сеанса работы в БД(ALTER SESSION, SET ROLE).
Операторы управления системой изменяют установки всей БД (ALTER SYSTEM).
Операции языкаSQL.
Операции языкаSQL делятся на ряд групп.
Арифметические операции представлены двумя группами операций:
1) унарные+, –
2) бинарные+, –, *, /
Арифметические операции используются в выражениях для измене-ния знака операнда, сложения, вычитания, умножения и деления число-вых величин. Унарные операции оперируют только с одним операндом, бинарные требуют при своем использовании два операнда.
Операции над строками.
В этой группе операций имеется только одна операция– операция сцепления строк. Для ее обозначения исполь-зуется комбинация двух символов– вертикальная черта( || ).
Операции сравнения.
Применяются в основном в операторахDML при построении простых условий проверки для сравнения значения од-ного выражения со значением другого выражения. Результатом сравнения может быть либоTRUE, либоFALSE, либоUNKNOWN. Значение UNKNOWN может появиться в результате сравнения значений двух вы-ражений, если одно из выражений или они оба имели значениеNULL.
Над значениями двух выражений Х иY могут быть выполнены следую-щие операции сравнения:
X = Y – проверка значений выраженийX иY на равенство; результат равенTRUE, если указанное соотношение выполняется;
X != Y, X<>Y, X ^= Y – проверка значений выраженийX иY на нера-венство; результат равенTRUE, если указанное соотношение выполняет-ся;
X < Y, X > Y, X >= Y, X <= Y – проверка значений выраженийX иY на соотношение«меньше, чем», «больше чем», «больше или равно», «меньше или равно»; результат равенTRUE, если указанное соотноше-ние выполняется;
X [NOT]BETWEEN A AND B – проверка, [не] находится ли зна-чение выражения Х в указанном диапазоне, определяемом значениями выраженийA иB; результат равенTRUE, если указанное соотношение выполняется;
XIN(список выражений| подзапрос) – проверка значения выраже-нияX на равенство некоторому элементу из списка значений выражений или множества значений, возвращенных подзапросом; результат равен TRUE, если указанное соотношение выполняется хотя бы для одного элемента списка выражений или множества значений, возвращенных подзапросом;
X NOT IN (список выражений| подзапрос) – проверка значения вы-раженияX на неравенство ни одному элементу из списка значений вы-ражений или множества значений, возвращенных подзапросом; резуль-тат равенTRUE, если указанное соотношение выполняется для всех эле-ментов списка выражений или множества значений, возвращенных под-запросом;
X LIKE Z – проверка значения выражения Х на подобие, результат проверки равенTRUE, еслиX совпадает с шаблономZ. Шаблон пред-ставляет собой символьную строку, внутри которой символ'%' использу-ется для сопоставления с любой строкой из нуля или более символов, кромеNULL – строки, а символ'_' сопоставляется с любым одиночнымсимволом;
ХIS [NOT]NULL – проверка значения выражения Х на[не] пустое значениеNULL; результат равенTRUE, если указанное соотношение выполняется;
Операция сравнения с кванторомANY позволяет сравнивать прове-ряемое значение со всеми элементами из заданного списка значений вы-ражений или множества значений, возвращенных подзапросом; резуль-тат проверки равенTRUE, если указанная операция сравнения(=, !=, >, <, >=, <=) выполняется хотя бы для одного элемента списка выражений
или множества значений, возвращенных подзапросом;
Операция сравнения с кванторомALL позволяет сравнивать прове-ряемое значение со всеми элементами из заданного списка значений вы-ражений или множества значений, возвращенных подзапросом; резуль-тат проверки равенTRUE, если указанная операция сравнения(=, !=, >, <, >=, <=) выполняется для всех элементов списка выражений или мно-жества значений, возвращенных подзапросом;
Операция сравненияEXISTS проверяет результат выполнения подза-проса; результат проверки равенTRUE, если подзапрос возвращает не пустое множество значений.
Логические операции.
Представлены стандартными логическими операциями: NOT, AND, OR, используемыми при построении сложных условий проверки, в которых простые условия объединяются в более сложное условие с помощью логических операций.
Логические операции выполняются в трехзначной логике, которая за-дается следующими таблицами истинности:
Операции над множествами.
Позволяют выполнить определенныедействия над выбираемыми в результате выполнения одного или нескольких запросов группами строк. Естественно, что структуры этих строк должны совпадать по количеству, порядку расположения и типу данных входящих в них элементов. К ним относятся следующие опера-ции:
UNION ALL – объединяет все строки, извлеченные одним или не-сколькими запросами, включая повторяющиеся;
UNION – объединяет все строки, извлеченные одним или нескольки-ми запросами, с устранением дублирующих строк;
INTERSECT – объединяет только те строки, которые присутствуют в результатах выполнения каждого из запросов, с устранением дублирую-щих строк;
MINUS – объединяет все неповторяющиеся строки, извлеченные пер-вым запросом, но не извлеченные вторым.
Другие операции.
Класс других операций содержит две операции:
операцию внешнего соединения(+) и специальную операциюPRIOR.
Операция внешнего соединения используется при выборе информа-ции из нескольких таблиц в том случае, если из одной таблицы необхо-димо выбрать все строки, а из остальных таблиц только те строки, для которых выполняются определенные условия.
ОперацияPRIOR устанавливает взаимосвязь между родительскими и дочерними строками при построении иерархических запросов.