Понимание SQL (fb2)

- Понимание SQL (пер. В. Н. Лебедев) 646 Кб, 292с. (скачать fb2) - Мартин Грубер

Настройки текста:




МАРТИН ГРУБЕР Понимание SQL

Перевод Лебедева В.Н.

Под редакцией Булычева В.Н.

МОСКВА, 1993

MARTIN GRUBER

Understanding SQL

Команда SELECT


SELECT * | { [ DISTINCT | ALL] <value expression>.,..}

FROM { <table name> [ <alias> ] }.,..

[ WHERE <predicate>]

[ GROUP BY { <column name> | <integer> }.,..]

[ HAVING <predicate>]

[ ORDERBY { <column name> | <integer> }.,..]

[ { UNION [ALL]



SELECT * | { [DISTINCT | ALL] < value expression >.,..}

FROM { <table name> [<alias>]} .,..

[ WHERE <predicate>

[ GROUP BY { <columnname> | <integer> }.,..]

[ HAVING <predicate>]

[ ORDER BY { <columnname> | <integer> }.,..] } ] ...;

Элементы, используемые в команде SELECT

ЭЛЕМЕНТ

ОПРЕДЕЛЕНИЕ

<value expression>

Выражение, которое производит значение. Оно может включать в себя или содержать <column name>.

<table name>

Имя или синоним таблицы или представления

<alias>

Временный синоним для <table name>, определеный в этой таблице и используемый только в этой команде

<predicate>

Условие , которое может быть верным или неверным для каждой строки или комбинации строк таблицы в предложении FROM.

<column name>

Имя столбца в таблице.

<integer>

Число с десятичной точкой. В этом случае, оно показывает <value expression> в предложении SELECT с помощью идентификации его местоположения в этом предложении.

Команды UPDATE, INSERT, DELETE

UPDATE


UPDATE <tablename>

SET { | }.,. .< column name> = <value expresslon> [ WHERE <predlcate>

| WHERE CURRENT OF <cursor name> (*только для вложения*) ];

INSERT


INSERT INTO < table name> [(<column name> .,. ]

{ VALUES ( <value expression> .,.. ) } | <query>;

DELETE


DELETE FROM <table name>

[ WHERE <predicate>

| WHERE CURRENT OF <cursor name> (*только для вложения*) ];

Элементы, используемые в командах МОДИФИКАЦИИ

ЭЛЕМЕНТ

ОПРЕДЕЛЕНИЕ

<cursor name>

Имя курсора используемого в этой программе.

<query>

Допустимая команда SELECT.

Для других элементов смотри команду SELECT.

Символы Используемые в Синтаксисе Предлжения

СИМВОЛ

ОБЪЯСНЕНИЕ

|

Любой предшествующий знаку (|) символ может быть произвольно

заменен на любой следующий за (|). Это — символический способ высказывания "или" ("or").

{ }

Все, что включено в фигурные скобки обрабатывается как модуль с целью оценки |, .,.. или других символов.

[ ]

Все,включенное в квадратные скобки является необязательным

...

Любое, предшествующее этому, может повторяться любое число раз.

.,..

Любое, предшествующее этому, и в каждом случае отделенное

запятыми, может повторяться любое число раз.

Команда CREATE TABLE


CREATE TABLE <table name>

( { <column name> <data type> | <size>]

[<colcnstrnt> ...]} .,.. );

[<tabconstrnt>] .,.. );

Элементы, используемые в команде CREATE TABLE

ЭЛЕМЕНТ

ОПРЕДЕЛЕНИЕ

<table name>

Имя таблицы создаваемой этой командой.

<column name>

Имя столбца таблицы.

<data type>

Тип данных

Тип данных, который может содержаться в столбце.

Может быть любым из следующих:

INTEGER (ЦЕЛОЕ ЧИСЛО),

CHARACTER (СИМВОЛЬНОЕ),

DECIMAL (ДЕСЯТИЧНОЕ),

NUMERIC (ЧИСЛОВОЕ),

SMALLINT (НАИМЕНЬШЕЕ)


FLOAT (С ПЛАВАЮЩЕЙ ТОЧКОЙ)


REAL (РЕАЛЬНОЕ),

DOUBLE PRECISION (УДВОЕННАЯ ТОЧНОСТЬ С ПЛАВАЮЩЕЙ ТОЧКОЙ),

LONG * (ДЛИННОЕ *),

VARCHAR * (ПЕРЕМЕННОЕ СИМВОЛЬНОЕ *),

DATE * (ДАТА *),

TIME * (ВРЕМЯ *)


(* — указывает на нестандартный для SQL тип данных)


<size> Размер. Его значение зависит от <data type>.

<colconstrnt> Может быть любым из следующих:

NOT NULL (НЕ НУЛЕВОЙ),

UNIQUE (УНИКАЛЬНЫЙ),

PRIMARY KEY (ПЕРВИЧНЫЙ КЛЮЧ),

CHECK(<predicate>) (ПРОВЕРКА предиката),

DEFAULT = <value expression> (ПО УМОЛЧАНИЮ = значимому выражению)

REFERENCES <table name> [(<column name> .,.. )] (ССЫЛКА НА имя таблицы [(имя столбца) ] )

<tabconstrnt> Может быть любым из следующих:

UNIQUE (УНИКАЛЬНЫЙ),

PRIMARY KEY (ПЕРВИЧНЫЙ КЛЮЧ),

CHECK (ПРОВЕРКА предиката )

FOREIGN KEY(<column name>) (ВНЕШНИЙ КЛЮЧ)

REFERENCES <table name> [(<column name> .,.. )] (ССЫЛКА НА имя таблицы [( имя столбца) ].

ПРЕДИСЛОВИЕ

"ПОНИМАНИЕ SQL" - это полный учебник по программированию на Структурированном Языке Запросов, написанный специально для тех, кто будет использовать SQL в процессе