Минимальная грамматика SQL
В этом разделе описывается минимальный синтаксис SQL, который должен поддерживать драйвер ODBC. Синтаксис, описанный в этом разделе, представляет собой подмножество синтаксиса уровня входа SQL-92.
Приложение может использовать любой из синтаксиса в этом разделе и убедиться, что любой драйвер, совместимый с ODBC, будет поддерживать этот синтаксис. Чтобы определить, поддерживаются ли дополнительные функции SQL-92 не в этом разделе, приложение должно вызвать SQLGetInfo с типом сведений SQL_SQL_CONFORMANCE. Даже если драйвер не соответствует ни одному уровню соответствия SQL-92, приложение по-прежнему может использовать синтаксис, описанный в этом разделе. Если драйвер соответствует уровню SQL-92, с другой стороны, он поддерживает все синтаксисы, включенные в этот уровень. Это включает синтаксис в этом разделе, так как минимальная грамматика, описанная здесь, является чистой подмножеством самого низкого уровня соответствия SQL-92. После того как приложение знает поддерживаемый уровень SQL-92, он может определить, поддерживается ли функция более высокого уровня (при наличии), вызвав SQLGetInfo с отдельным типом информации, соответствующим этой функции.
Драйверы, работающие только с источниками данных только для чтения, могут не поддерживать эти части грамматики, включенные в этот раздел, с изменением данных. Приложение может определить, доступен ли источник данных только для чтения, вызвав SQLGetInfo с типом сведений SQL_DATA_SOURCE_READ_ONLY.
Оператор
create-table-statement ::=
CREATE TABLE base-table-name
(тип данных идентификатора столбца [,тип данных идентификатора столбца]...)
Внимание
В качестве типа данных в инструкции create-table-application приложения должны использовать тип данных из столбца TYPE_NAME результирующий набор, возвращаемый SQLGetTypeInfo.
delete-statement-searched ::=
DELETE FROM table-name [WHERE search-condition]
drop-table-statement ::=
DROP TABLE base-table-name
insert-statement ::=
INSERT IN TABLE-name [( column-identifier [, column-identifier]...)] VALUE (insert-value[, insert-value]...)
select-statement ::=
SELECT [ALL | DISTINCT] select-list
FROM table-reference-list
[условие поиска WHERE]
[предложение по заказам]
оператор ::= create-table-statement
| Delete-statement-searched
| drop-table-statement
| Инструкция insert-
| Оператор select-
| update-statement-searched
update-statement-searched
UPDATE table-name
SET column-identifier = {expression | NULL }
[, column-identifier = {expression | NULL}]...
[условие поиска WHERE]
Этот раздел содержит следующие подразделы.