|
Программирование >> Понятие sql
Эта команда оставляет неизменными все изменения, сделанные в базе данных, до тех пор, пока начавшаяся транзакция не закончится, и не начнется новая транзакция. CREATE INDEX (*NONSTANDARD*) (СОЗДАТЬ ИНДЕКС)(*НЕСТАНДАРТНО*) Синтаксис CREATE [UNIQUE] INDEX <Index name> ON <table name> (<column list>); Эта команда создает эффективный маршрут с быстрым доступом для поиска строк содержащих обозначенные столбцы. Если UNIQUE - указана, таблицанесмо-жет содержать дубликатов (двойников) значений в этих столбцах. CREATE SYNONYM (*NONSTANDARD*) (СОЗДАТЬ СИНОНИМ)(*НЕСТАНДАРТНО*) Синтаксис CREATE IPUBLICl SYNONYM <synonym> FOR <owner>.<table name>; Эта команда создает альтернативное (синоним) имя для таблицы. Синоним принадлежит его создателю, асаматаблица, обычно другому пользователю. Используя синоним, его владелец может не ссылаться к таблице ее полным (включая имя владельца) именем. Если PUBLIC - указан, синоним принадлежит каталогу SYSTEM и следовательно доступен всем пользователям. CREATE TABLE (СОЗДАТЬ ТАБЛИЦУ) Синтаксис CREATE TABLE <table name> ({<column name> <data type>[<size>] [<colconstralnt> ...] [<defvalue>]} <tabconstraint> .,..); Команда создает таблицу в базе данных. Эта таблица будет принадлежать ее создателю. Столбцы будут рассматриваться в поименном порядке. <data type> определяет тип данных который будет содержать столбец. Стандарт <data type> описывается в Приложении B; все прочие используемые типы данных <data type>, обсуждались в Приложении C. Значение размера <size> зависитоттипа данных <data type>. <colconstraint> и <tabconstraint> налагают ограничения на значения, которые могут быть введены в столбце. <defvalue> определяет значение (по умолчанию) которое будет вставлено автоматически, если никакого другого значения не указано для этой строки.(См. Главу 17 для подробностей о самой команде CREATE TABLE иГлавы 18 И 19 для подробностей об ограничениях и о <defvalue>). CREATE VIEW (СОЗДАТЬ ПРОСМОТР) Синтаксис CREATE VIEW <table name> AS <query> [WITH CHECK OPTION]; Просмотр обрабатывается как любая таблица в командах SQL. Когда команда ссылается на имя таблицы <table name>, запрос <query> выполняется, и его вывод соответствует содержанию таблицы указнной в этой команде. Некоторые просмотры могут модифицироваться, что означает, что команды модификации могут выполняться в этих просмотрах и передаваться в таблицу, на которую была ссылка в запросе <query>. Если указано предложение WITH CHECK OPTION, эта модификация должна также удовлетворять условию предиката <predicate> в запросе <query>. DECLARE CURSOR (ОБЬЯВИТЬ КУРСОР) Синтаксис EXEC SQL DECLARE <cursor name> CURSOR FOR <query><SQL term> Эта команда связывает имя курсора <cursor name>, с запросом <query>. Когда курсор открыт (см. OPEN CURSOR), запрос <query> выполняется, и его результат может быть выбран (командой FETCH) для вывода. Если курсор модифицируемый, таблица на которую ссылается запрос <query>, может получить изменение содержания с помощью операции модификации в курсоре (См. Главу 25 о модифицируемых курсорах). DELETE (УДАЛИТЬ) Синтаксис DELETE FROM <table name> {[WHERE <predicate>];} WHERE CURRENT OF <cursor name><SQL term> Если предложение WHERE отсутствует, ВСЕ строки таблицы удаляются. Если предложение 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 (ВСТАВКА) Синтаксис
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |