Мартин грубер понимание sql перевод Лебедева В. Н. Под редакцией Булычева В. Н. Москва, 1993 martin gruber


GRANT DBA | RESOURCE | CONNECT .... TO .,.. [IDENTIFIED BY ]


Download 1.45 Mb.
bet170/172
Sana26.01.2023
Hajmi1.45 Mb.
#1128343
1   ...   164   165   166   167   168   169   170   171   172
Bog'liq
Грубер. Понимание SQL

GRANT DBA | RESOURCE | CONNECT .... TO .,.. [IDENTIFIED BY
]

CONNECT дает возможность передавать право на регистрации и некоторые другие ограниченные права.
RESOURCE дает пользователю право создавать таблицы. DBA дает возможность передавать почти все права.
IDENTIFIED BY используется вместе с CONNECT, для создания или изменения пароля пользователя.
INSERT
(ВСТАВКА)


Синтаксис
INSERT INTO () VALUES () | ;
INSERT создает одну или больше новых строк в таблице с именем
. Если используется предложение VALUES , их значения вставляются в таблицу с именем
. Если запрос указан, каждая строка вывода будет вставлена в таблицу с именем
. Если список столбцов отсутствует, все столбцы таблицы
, принимаются в упорядоченном виде.
OPEN CURSOR
(ОТКРЫТЬ КУРСОР)


Синтаксис
EXEC SQL OPEN CURSOR
OPEN CURSOR выполняет запрос связанный с курсором . Вывод может теперь извлекать по одной строке для каждой команды FETCH.
REVOKE (*NONSTANDARD*)
(ОТМЕНИТЬ ПОЛНОМОЧИЯ) (НЕСТАНДАРТНО)


Синтаксис
REVOKE {ALL [PRIVILEGES] |
.,..} [ON
] FROM { PUBLIC | .,..};
Привелегия
может быть любой из указаных в команде GRANT. Пользователь, дающий REVOKE, должен иметь те же привелегии, что и пользователь, который давал GRANT. Предложение ON может быть использовано, если используется привилегия специального типа для особого объекта.
ROLLBACK (WORK)
(ОТКАТ) (ТРАНЗАКЦИИ)


Синтаксис
ROLLBACK WORK;
Команда отменяет все изменения в базе данных, сделанные в течение текущей транзакции. Она, кроме того, заканчивает текущую и начинает новую транзакцию.
SELECT
(ВЫБОР)


Синтаксис
SELECT { IDISTINCT | ALL] < value expression > . , . . } / *
[INTO (*embedded only*)]
FROM < table reference > . , . .
[WHERE
]
[GROUP BY . , . .]
[HAVING
]
[ORDER BY [ASC | DESC] . , . . ];

Это предложение огранизует запрос и выводит значения из базы данных (см. Глава 3 — Глава 14). Применяются следующие правила:
* Если ни ALL, ни DISTINCT — не указаны, принимается — ALL.
* Выражение состоит из , агрегатной функции , нестандартной функции , постоянной , или любой их комбинации с операторами в допустимых выражениях.
* Ссылаемая таблица
состоит из имени таблицы, включая префикс владельца, если текущий пользователь не владелец, или синоним (нестандартно) для таблицы. Таблица может быть или базовой таблицей или просмотром. В принципе, псевдоним может указать, какой синонимом используется для таблицы только на время текущей команды. Имя таблицы или синоним должны отделяться от псевдонима одним или более разделительными знаками .
* Если используется GROUP BY, все столбцы используемые в предложении SELECT, должны будут использоваться как группа столбцов , если они не содержатся в агрегатной функции . Вся группа столбцов должна быть представлена среди выражений указанных в предложении SELECT. Для каждой отдельной комбинации значений группы столбцов , будет иметься одна и только одна строка вывода.
* Если HAVING используется, предикат
применяется к каждой строке произведенной предложением GROUP BY, и те строки которые сделают этот предикат верным, будут выведены.
* Если ORDER BY используется, вывод имеет определенную последовательность. Каждый идентификатор столбца ссылается к указанному в предложении SELECT. Если это является указанным столбцом , может быть таким же как . Иначе может быть положительным целым числом, указывающим место где находится в последовательности предложения SELECT. Вывод будет сформирован так чтобы помещать значения содержащиеся в в порядке возрастания, если DESC не указан. Имя идентификатора столбца , стоящее первым в предложении ORDER BY будет предшествовать позже стоящим именам в определении последовательности вывода.

Предложение SELECT оценивает каждую строку-кандидат таблицы в которой строки показаны независимо. Строка-кандидат определяется следующим образом:


* Если только одна ссылаемая таблица
включена, каждая строка этой таблица в свою очередь является строкой-кандидатом.
* Если более одной ссылаемой таблицы
включено, каждая строка каждой таблицы должна быть скомбинирована в свою очередь с каждой комбинацией строк из всех других таблиц. Каждая такая комбинация будет в свою очередь строкой-кандидатом.

Каждая строка-кандидат производит значения, которые делают предикат


в предложении WHERE верным, неверным, или неизвестным. Если GROUP BY не используется, каждое применяется в свою очередь для каждой строки-кандидата, чье значение делает предикат верным, и результатом этой операции является вывод. Если GROUP BY используется, строки-кандидаты комбинируются, используя агрегатные функции. Если никакого предиката
не установлено, каждое выражение применяется к каждой строке-кандидату или к каждой группе. Если указан DISTINCT, дубликаты (двойники) строк будут удалены из вывода.

Download 1.45 Mb.

Do'stlaringiz bilan baham:
1   ...   164   165   166   167   168   169   170   171   172




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling