Partilhar via


Gramática SQL mínima

Esta seção descreve a sintaxe SQL mínima à qual um driver ODBC deve dar suporte. A sintaxe descrita nesta seção é um subconjunto da sintaxe de Nível de entrada do SQL-92.

Um aplicativo pode usar qualquer uma das sintaxes nesta seção e ter certeza de que qualquer driver compatível com ODBC dará suporte a essa sintaxe. Para determinar se há suporte para recursos adicionais do SQL-92 nesta seção, o aplicativo deve chamar SQLGetInfo com o tipo de informações SQL_SQL_CONFORMANCE. Mesmo que o driver não esteja em conformidade com nenhum nível de conformidade do SQL-92, um aplicativo ainda poderá usar a sintaxe descrita nesta seção. Se um driver estiver em conformidade com um nível SQL-92, por outro lado, ele oferecerá suporte a toda a sintaxe incluída nesse nível. Isso inclui a sintaxe nesta seção porque a gramática mínima descrita aqui é um subconjunto puro do nível de conformidade sql-92 mais baixo. Depois que o aplicativo souber o nível do SQL-92 com suporte, ele poderá determinar se há suporte para um recurso de nível superior (se houver) chamando SQLGetInfo com o tipo de informação individual correspondente a esse recurso.

Os drivers que funcionam apenas com fontes de dados somente leitura podem não dar suporte às partes da gramática incluídas nesta seção que lidam com a alteração de dados. Um aplicativo pode determinar se uma fonte de dados é somente leitura chamando SQLGetInfo com o tipo de informações SQL_DATA_SOURCE_READ_ONLY.

Instrução

create-table-statement ::=

CREATE TABLE base-table-name

(tipo de dados do identificador de coluna [,column-identifier data-type]...)

Importante

Como um tipo de dados em uma instrução create-table, os aplicativos devem usar um tipo de dados da coluna TYPE_NAME do conjunto de resultados retornado por SQLGetTypeInfo.

delete-statement-searched ::=

DELETE FROM table-name [WHERE search-condition]

drop-table-statement ::=

DROP TABLE base-table-name

instrução insert ::=

INSERT INTO table-name [( column-identifier [, column-identifier]...)] VALUES (insert-value[, insert-value]... )

select-statement ::=

SELECT [ALL | DISTINCT] select-list

FROM table-reference-list

[WHERE search-condition]

[order-by-clause]

instrução ::= create-table-statement

| delete-statement-searched

| drop-table-statement

| instrução insert

| instrução select

| update-statement-searched

update-statement-searched

UPDATE table-name

SET column-identifier = {expression | NULL }

[, column-identifier = {expression | NULL}]...

[WHERE search-condition]

Esta seção contém os seguintes tópicos.