Чтение онлайн

на главную - закладки

Жанры

Понимание SQL

Грубер Мартин

Шрифт:

DELETE (УДАЛИТЬ)

Синтаксис

DELETE FROM <table name>

{ [WHERE <predicate>]; }

| WHERE CURRENT OF <cursorname><SQL term

Если предложение WHERE отсутствует, ВСЕ строки таблицы удаляются. использует предикат><predicate>, строки, которые удовлетворяют условию этого предиката<predicate > удаляются. Если предложение WHERE имеет аргумент CURRENT OF(ТЕКУЩИЙ) в имени курсора<cursor name >, строка из таблицы<table name> на которую в данный момент имеется ссылка с помощью

имени курсора <cursor name> будет удалена. Форма WHERE CURRENT может использоваться только во вложенном SQL, и только с модифицируемыми курсорами.

EXEC SQL (ВЫПОЛНИТЬ SQL)

Синтаксис

EXEC SQL <embedded SQL command> <SQL term>

EXEC SQL используется чтобы указывать начало всех команд SQL, вложенных в другой язык.

FETCH (ВЫБОРКА)

Синтаксис

EXEC SQL FETCH <cursorname>

INTO <host-varlable llst><SQL term>

FETCH принимает вывод из текущей строки запроса<query>, вставляет ее в список главных переменных<host-variable list>, и перемещает курсор на следующую строку. Список<host-variable list> может включать переменную indicator в качестве целевой переменной (См. Главу 25. )

GRANT (ПЕРЕДАТЬ ПРАВА)

Синтаксис (стандартный)

GRANT ALL [PRIVILEGES] | {SELECT | INSERT | DELETE | UPDATE [(<column llst>)]

| REFERENCES [(<column llst>)l } .,..

ON <table name> .,..

TO PUBLIC | <Authorization ID> .,..

[WITH GRANT OPTION];

Аргумент ALL(ВСЕ), с или без PRIVILEGES(ПРИВИЛЕГИИ), включает каждую ривилегию в список привилегий. PUBLIC(ОБЩИЙ) включает всех существующих пользователей и всех созданых в будущем. Эта команда дает возможность передать права для выполнения действий в таблице с указаным именем. REFERENCES позволяет дать права чтобы использовать столбцы в списке столбцов<column list> как родительский ключ для внешнего ключа. Другие привилегии состоят из права выполнять команды для которых привилегии указаны их имнами в таблице. UPDATE, подобен REFERENCES, и может накладывать ограничения на определенные столбцы. GRANT OPTION дает возможность передавать эти привилегии другим пользователям.

Синтаксис (нестандартный )

GRANT DBA | RESOURCE | CONNECT ... .

TO <Authorization ID> .,..

[IDENTIFIED BY> password>

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

INSERT (ВСТАВКА)

Синтаксис

INSERT INTO <table name> (<column llst>)

VALUES (<value llst>) I <query>;

INSERT создает одну или больше новых строк в таблице с именем <table name>. Если используется предложение VALUES, их значения вставляются в таблицу с именем< table name>. Если запрос<query >

указан, каждая строка вывода будет вставлена в таблицу с именем <table name>. Если список столбцов<column list> отсутствует, все столбцы таблицы<table name>, принимаются в упорядоченном виде.

OPEN CURSOR (ОТКРЫТЬ КУРСОР)

Синтаксис

EXEC SQL OPEN CURSOR <cursorname><SQL term>

OPEN CURSOR выполняет запрос связанный с курсором<cursor name>. Вывод может теперь извлекать по одной строке для каждой команды FETCH.

REVOKE (*NONSTANDARD*) (ОТМЕНИТЬ ПОЛНОМОЧИЯ) (НЕСТАНДАРТНО)

Синтаксис

REVOKE { ALL [PRIVILEGES]

| <privilege> .,.. } [ON <table name>]

FROM { PUBLIC

| <Authorization ID> .,.. };

Привелегия<privelege> может быть любой из указаных в команде GRANT. Пользователь дающий REVOKE должен иметь те же привелегии, что и пользователь который давал GRANT. Предложение ON может быть использовано, если используется привилегия специального типа для особого объекта.

ROLLBACK (WORK) (ОТКАТ) (ТРАНЗАКЦИИ)

Синтаксис

ROLLBACK WORK;

Команда отменяет все изменения в базе данных, сделанные в течение текущей транзакции. Она кроме того заканчивается текущую, и начинает новую транзакцию.

SELECT (ВЫБОР)

Синтаксис

SELECT { IDISTINCT | ALL] < value expression > .,.. } / *

[INTO <host variable list> (*embedded only*)]

FROM < table reference > .,..

[WHERE <predicate>]

[GROUP BY <grouping column> .,..]

[HAVING <predicate>]

[ORDER BY <ordering column> [ASC | DESC] .,.. ];

Это предложение огранизует запрос и выводит значения из базы данных( см. Глава 3 - Глава 14). Применяются следующие правила:

* Если ни ALL, ни DISTINCT - не указаны, принимается - ALL.

* Выражение<value expression> состоит из <column spec>, агрегатной функции <aggregate funct>, нестандартной функции<nonstandard function>, постоянной<constant>, или любой их комбинации с операторами в допустимых выражениях.

* Ссылаемая таблица<table reference>, состоит из имени таблицы, включая префикс владельца если текущий пользователь не владелец, или синоним(нестандартно) для таблицы. Таблица может быть или базовой таблицей или просмотром. В принципе, псевдоним может указать, какой синонимом используется для таблицы только на время текущей команды. Имя таблицы или синоним должны отделяться от псевдонима одним или более разделительными знаками<separator>.

* Если используется GROUP BY, все столбцы<column spec> используемые в предложении SELECT, должны будут использоваться как группа столбцов<grouping column>, если они не содержатся в агрегатной функции<aggregate funct>. Вся группа столбцов<grouping column> должна быть представлена среди выражений< value expressions> указанных в предложении SELECT. Для каждой отдельной комбинации значений группы столбцов<grouping column>, будет иметься одна и только одна строка вывода.

Поделиться:
Популярные книги

Я до сих пор князь. Книга XXII

Дрейк Сириус
22. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я до сих пор князь. Книга XXII

Двойник короля 12

Скабер Артемий
12. Двойник Короля
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Двойник короля 12

Третий. Том 3

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий. Том 3

Охотник за головами

Вайс Александр
1. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Охотник за головами

Надуй щеки! Том 6

Вишневский Сергей Викторович
6. Чеболь за партой
Фантастика:
попаданцы
дорама
5.00
рейтинг книги
Надуй щеки! Том 6

Князь

Шмаков Алексей Семенович
5. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
сказочная фантастика
5.00
рейтинг книги
Князь

Кай из рода красных драконов 3

Бэд Кристиан
3. Красная кость
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кай из рода красных драконов 3

Неудержимый. Книга III

Боярский Андрей
3. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга III

Кодекс Охотника. Книга XVII

Винокуров Юрий
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVII

Законник Российской Империи. Том 5

Ткачев Андрей Юрьевич
5. Словом и делом
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
сказочная фантастика
5.00
рейтинг книги
Законник Российской Империи. Том 5

Железный Воин Империи V

Зот Бакалавр
5. Железный Воин Империи
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Железный Воин Империи V

Рассвет русского царства 3

Грехов Тимофей
3. Новая Русь
Фантастика:
историческое фэнтези
альтернативная история
5.00
рейтинг книги
Рассвет русского царства 3

Геном хищника. Книга четвертая

Гарцевич Евгений Александрович
4. Я - Легенда!
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Геном хищника. Книга четвертая

Я князь. Книга XVIII

Дрейк Сириус
18. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я князь. Книга XVIII