Partilhar via


Suporte SQLGetInfo

Quando um ODBC 2. X application chama SQLGetInfo para um driver ODBC 3*.x*, os argumentos InfoType na tabela a seguir devem ter suporte.

Infotipo Retornos
SQL_ALTER_TABLE (ODBC 2.0) Observação: esse tipo de informação não foi preterido; as máscaras de bits na coluna à direita são preteridas. Um bitmask SQLINTEGER enumerando as cláusulas na instrução ALTER TABLE compatível com a fonte de dados.

As máscaras de bits a seguir são usadas para determinar quais cláusulas têm suporte:

SQL_AT_DROP_COLUMN = Há suporte para a capacidade de remover colunas. Se isso resulta em comportamento em cascata ou restrição é definido pelo driver. (ODBC 2.0)

SQL_AT_ADD_COLUMN = Há suporte para a capacidade de adicionar várias colunas em uma única instrução ALTER TABLE. Esse bit não combina com outros bits SQL_AT_ADD_COLUMN_XXX ou bits SQL_AT_CONSTRAINT_XXX. (ODBC 2.0)
SQL_FETCH_DIRECTION (ODBC 1.0)

O tipo de informação foi introduzido no ODBC 1.0; cada máscara de bits é rotulada com a versão em que foi introduzida.
Um bitmask SQLINTEGER enumerando as opções de direção de busca com suporte.

As máscaras de bits a seguir são usadas em conjunto com o sinalizador para determinar quais opções têm suporte:

SQL_FD_FETCH_NEXT (ODBC 1.0) SQL_FD_FETCH_FIRST (ODBC 1.0) SQL_FD_FETCH_LAST (ODBC 1.0) SQL_FD_FETCH_PRIOR (ODBC 1.0) SQL_FD_FETCH_ABSOLUTE (ODBC 1.0) SQL_FD_FETCH_RELATIVE (ODBC 1.0) SQL_FD_FETCH_BOOKMARK (ODBC 2.0)
SQL_LOCK_TYPES (ODBC 2.0) Um bitmask SQLINTEGER enumerando os tipos de bloqueio com suporte para o argumento fLock em SQLSetPos.

As máscaras de bits a seguir são usadas em conjunto com o sinalizador para determinar quais tipos de bloqueio têm suporte:

SQL_LCK_NO_CHANGE SQL_LCK_EXCLUSIVE SQL_LCK_UNLOCK
SQL_ODBC_API_CONFORMANCE (ODBC 1.0) Um valor SQLSMALLINT que indica o nível de conformidade do ODBC.

SQL_OAC_NONE = Nenhum

SQL_OAC_LEVEL1 = Nível 1 com suporte

SQL_OAC_LEVEL2 = Nível 2 com suporte
SQL_ODBC_SQL_CONFORMANCE (ODBC 1.0) Um valor SQLSMALLINT que indica a gramática SQL compatível com o driver. Consulte Apêndice C: Gramática do SQL para obter uma definição dos níveis de conformidade do SQL.

SQL_OSC_MINIMUM = Gramática mínima com suporte

SQL_OSC_CORE = Gramática principal com suporte

SQL_OSC_EXTENDED = gramática estendida com suporte
SQL_POS_OPERATIONS (ODBC 2.0) Um bitmask SQLINTEGER enumerando as operações com suporte em SQLSetPos.

As máscaras de bits a seguir são usadas em conjunto com o sinalizador para determinar quais opções têm suporte:

SQL_POS_POSITION (ODBC 2.0) SQL_POS_REFRESH (ODBC 2.0) SQL_POS_UPDATE (ODBC 2.0) SQL_POS_DELETE (ODBC 2.0) SQL_POS_ADD (ODBC 2.0)
SQL_POSITIONED_STATEMENTS (ODBC 2.0) Um bitmask SQLINTEGER enumerando as instruções SQL posicionadas com suporte.

As seguintes máscaras de bits são usadas para determinar quais instruções têm suporte:

SQL_PS_POSITIONED_DELETE SQL_PS_POSITIONED_UPDATE SQL_PS_SELECT_FOR_UPDATE
SQL_SCROLL_CONCURRENCY (ODBC 1.0) Um bitmask SQLINTEGER enumerando as opções de controle de simultaneidade com suporte para o cursor.

As máscaras de bits a seguir são usadas para determinar quais opções têm suporte:

SQL_SCCO_READ_ONLY = Cursor é somente leitura. Nenhuma atualização é permitida.

SQL_SCCO_LOCK = Cursor usa o nível mais baixo de bloqueio suficiente para garantir que a linha possa ser atualizada.

SQL_SCCO_OPT_ROWVER = O Cursor usa controle de simultaneidade otimista, comparando versões de linha, como SQLBase ROWID ou Sybase TIMESTAMP.

SQL_SCCO_OPT_VALUES = Cursor usa controle de simultaneidade otimista, comparando valores.
SQL_STATIC_SENSITIVITY (ODBC 2.0) Uma máscara de bits SQLINTEGER enumerando se as alterações feitas por um aplicativo em um cursor estático ou controlado por conjunto de chaves por meio de SQLSetPos ou instruções de atualização ou exclusão posicionadas podem ser detectadas por esse aplicativo.

SQL_SS_ADDITIONS = as linhas adicionadas são visíveis para o cursor; o cursor pode rolar para essas linhas. Onde essas linhas são adicionadas ao cursor depende do driver.

SQL_SS_DELETIONS = As linhas excluídas não estão mais disponíveis para o cursor e não deixam um "buraco" no conjunto de resultados; depois que o cursor rolar de uma linha excluída, ele não poderá retornar a essa linha.

SQL_SS_UPDATES = Atualizações para linhas ficam visíveis para o cursor; se o cursor rolar de e retornar para uma linha atualizada, os dados retornados pelo cursor serão os dados atualizados, não os dados originais. Essa opção se aplica somente a cursores estáticos ou atualizações em cursores controlados por conjunto de chaves que não atualizam a chave. Essa opção não se aplica a um cursor dinâmico ou no caso em que uma chave é alterada em um cursor misto.

Se um aplicativo pode detectar alterações feitas no conjunto de resultados por outros usuários, incluindo outros cursores no mesmo aplicativo, depende do tipo de cursor.

Um aplicativo ODBC 3*.x* que trabalha com um driver ODBC 3*.x* não deve chamar SQLGetInfo com os argumentos InfoType descritos na tabela anterior, mas deve usar os argumentos InfoType ODBC 3*.x* listados no parágrafo a seguir. Não há uma correspondência um-para-um entre argumentos InfoType usados no ODBC 2. x e aqueles usados no ODBC 3*.x*. Um aplicativo ODBC 3*.x* trabalhando com um ODBC 2. X driver, por outro lado, deve usar os argumentos InfoType descritos anteriormente.

Alguns dos tipos de informações na tabela anterior são preteridos em favor dos tipos de informações de atributos de cursor. Esses tipos de informações preteridos são SQL_FETCH_DIRECTION, SQL_LOCK_TYPES, SQL_POS_OPERATIONS, SQL_POSITIONED_STATEMENTS, SQL_SCROLL_CONCURRENCY e SQL_STATIC_SENSITIVITY. Os novos tipos de atributos de cursor são SQL_XXX_CURSOR_ATTRIBUTES1and SQL_XXX_CURSOR_ATTRIBUTES2, em que XXX é igual a DYNAMIC, FORWARD_ONLY, KEYSET_DRIVEN ou STATIC. Cada um dos novos tipos indica os recursos do driver para um único tipo de cursor. Para obter mais informações sobre essas opções, consulte a descrição da função SQLGetInfo .