Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Conformidade
Versão Introduzida: Normas ODBC 1.0 Conformidade: ISO 92
Resumo
O SQLGetInfo devolve informações gerais sobre o driver e a fonte de dados associadas a uma ligação.
Sintaxe
SQLRETURN SQLGetInfo(
SQLHDBC ConnectionHandle,
SQLUSMALLINT InfoType,
SQLPOINTER InfoValuePtr,
SQLSMALLINT BufferLength,
SQLSMALLINT * StringLengthPtr);
Argumentos
ConnectionHandle
[Entrada] Alavanca de ligação.
Infotipo
[Entrada] Tipo de informação.
InfoValuePtr
[Saída] Aponta para um buffer onde deves devolver a informação. Dependendo do InfoType solicitado, a informação devolvida será uma das seguintes: uma cadeia de caracteres terminada por null, um valor SQLUSMALLINT, uma máscara de bits SQLUINTE, uma flag SQLUINTE, um valor binário SQLUINTEGER ou um valor SQLULEN.
Se o argumento InfoType for SQL_DRIVER_HDESC ou SQL_DRIVER_HSTMT, o argumento InfoValuePtr é tanto entrada como saída. (Veja os descritores SQL_DRIVER_HDESC ou SQL_DRIVER_HSTMT mais adiante nesta descrição de função para mais informações.)
Se o InfoValuePtr for NULL, o StringLengthPtr continuará a devolver o número total de bytes (excluindo o carácter de terminação nula para dados de caracteres) disponíveis para devolver no buffer apontado pelo InfoValuePtr.
BufferLength
[Entrada] Comprimento do buffer *InfoValuePtr . Se o valor em *InfoValuePtr não for uma cadeia de caracteres ou se InfoValuePtr for um ponteiro nulo, o argumento BufferLength é ignorado. O driver assume que o tamanho de *InfoValuePtr é SQLUSMALLINT ou SQLUINTEGER, com base no InfoType. Se *InfoValuePtr for uma cadeia Unicode (ao chamar SQLGetInfoW), o argumento BufferLength deve ser um número par; se não, SQLSTATE HY090 (comprimento de string ou buffer inválido) é devolvido.
StringLengthPtr
[Saída] Apontador para um buffer onde devolver o número total de bytes (excluindo o carácter de terminação nula para dados de caracteres) disponíveis para devolver em *InfoValuePtr.
Para dados de caracteres, se o número de bytes disponíveis para devolver for maior ou igual ao BufferLength, a informação em *InfoValuePtr é truncada para bytes BufferLength menos o comprimento de um carácter de terminação nula e é terminada nula pelo driver.
Para todos os outros tipos de dados, o valor de BufferLength é ignorado e o driver assume que o tamanho de *InfoValuePtr é SQLUSMALLINT ou SQLUINTEGER, dependendo do InfoType.
Devoluções
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR ou SQL_INVALID_HANDLE.
Diagnóstico
Quando o SQLGetInfo devolve SQL_ERROR ou SQL_SUCCESS_WITH_INFO, um valor SQLSTATE associado pode ser obtido chamando SQLGetDiagRec com um HandleType de SQL_HANDLE_DBC e um Handle de ConnectionHandle. A tabela seguinte lista os valores SQLSTATE normalmente devolvidos pelo SQLGetInfo e explica cada um no contexto desta função; a notação "(DM)" precede as descrições dos SQLSTATEs devolvidas pelo Gestor de Drivers. O código de retorno associado a cada valor SQLSTATE é SQL_ERROR, salvo indicação em contrário.
| SQLSTATE | Erro | Descrição |
|---|---|---|
| 01000 | Aviso geral | Mensagem informativa específica para o condutor. (Função devolve SQL_SUCCESS_WITH_INFO.) |
| 01004 | Dados de cadeia, truncados à direita | O buffer *InfoValuePtr não era suficientemente grande para devolver toda a informação solicitada. Por isso, a informação foi truncada. O comprimento da informação solicitada na sua forma não arrunada é devolvido em *StringLengthPtr. (Função devolve SQL_SUCCESS_WITH_INFO.) |
| 08003 | Ligação não aberta | (DM) O tipo de informação solicitada em InfoType requer uma ligação aberta. Dos tipos de informação reservados pelo ODBC, apenas SQL_ODBC_VER podem ser devolvidos sem uma ligação aberta. |
| 08S01 | Falha da ligação de comunicação | A ligação de comunicação entre o driver e a fonte de dados à qual o driver estava ligado falhou antes de a função concluir o processamento. |
| HY000 | Erro geral | Ocorreu um erro para o qual não existia um SQLSTATE específico e para o qual não estava definido nenhum SQLSTATE específico da implementação. A mensagem de erro devolvida pelo SQLGetDiagRec no buffer *MessageText descreve o erro e a sua causa. |
| HY001 | Erro de alocação de memória | O controlador não conseguiu alocar a memória necessária para suportar a execução ou conclusão da função. |
| HY010 | Erro de sequência de funções | (DM) SQLExecute, SQLExecDirect ou SQLMoreResults era chamado para o StatementHandle e devolvido SQL_PARAM_DATA_AVAILABLE. Esta função era chamada antes de os dados serem recuperados para todos os parâmetros transmitidos. |
| HY013 | Erro de gestão de memória | A chamada de função não podia ser processada porque os objetos de memória subjacentes não podiam ser acedidos, possivelmente devido a condições de baixa memória. |
| HY024 | Valor de atributo inválido | (DM) O argumento InfoType era SQL_DRIVER_HSTMT, e o valor apontado pelo InfoValuePtr não era um handle de instrução válido. (DM) O argumento InfoType era SQL_DRIVER_HDESC, e o valor apontado pelo InfoValuePtr não era um nome de descritor válido. |
| HY090 | Comprimento inválido da corda ou do buffer | (DM) O valor especificado para o argumento BufferLength era inferior a 0. (DM) O valor especificado para BufferLength era um número ímpar, e *InfoValuePtr era de um tipo de dado Unicode. |
| HY096 | Tipo de informação fora do alcance | O valor especificado para o argumento InfoType não era válido para a versão de ODBC suportada pelo driver. |
| HY117 | A ligação é suspensa devido ao estado desconhecido da transação. Apenas funções de desconexão e de leitura são permitidas. | (DM) Para mais informações sobre o estado suspenso, veja Função SQLEndTran. |
| HYC00 | Campo opcional não implementado | O valor especificado para o argumento InfoType era um valor específico do driver que não é suportado pelo driver. |
| HYT01 | Expirou o tempo limite de ligação | O período de timeout da ligação expirou antes de a fonte de dados responder ao pedido. O período de tempo de expiração da ligação é definido através do SQLSetConnectAttr, SQL_ATTR_CONNECTION_TIMEOUT. |
| IM001 | O driver não suporta esta função | (DM) O driver que corresponde ao ConnectionHandle não suporta a função. |
Comments
Os tipos de informação atualmente definidos são apresentados em "Tipos de Informação", mais adiante nesta secção; Espera-se que mais sejam definidas para tirar partido de diferentes fontes de dados. Uma variedade de tipos de informação é reservada pelo ODBC; os desenvolvedores de drivers devem reservar valores para o seu uso específico do driver a partir do Open Group. O SQLGetInfo não realiza conversão ou thunking Unicode (ver Apêndice A: Códigos de Erro ODBC da Referência do Programador ODBC) para InfoTypes definidos pelo driver. Para mais informações, consulte Driver-Specific Tipos de Dados, Tipos de Descritores, Tipos de Informação, Tipos de Diagnóstico e Atributos. O formato da informação devolvida em *InfoValuePtr depende do InfoType solicitado. O SQLGetInfo irá devolver informação num dos cinco formatos diferentes:
Uma cadeia de caracteres terminada por nulo
Um valor SQLUSMALLINT
Uma máscara de bits SQLUINTEGER
Um valor SQLUINTEGER
Um valor binário SQLUINTEGER
O formato de cada um dos seguintes tipos de informação é indicado na descrição do tipo. A aplicação deve lançar o valor devolvido em *InfoValuePtr em conformidade. Para um exemplo de como uma aplicação poderia recuperar dados de uma máscara de bits SQLUINTEGER, veja "Exemplo de Código."
Um driver deve devolver um valor para cada tipo de informação definido nas tabelas seguintes. Se um tipo de informação não se aplicar ao driver ou fonte de dados, o driver devolve um dos valores listados na tabela seguinte.
| Tipo de informação | Valor |
|---|---|
| Cadeia de caracteres ("Y" ou "N") | "N" |
| Cadeia de caracteres (não "Y" ou "N") | Cadeia vazia |
| SQLUSMALLINT | 0 |
| Máscara de bits SQLUINTEGER ou valor binário SQLUINTEGER | 0L |
Por exemplo, se uma fonte de dados não suportar procedimentos, o SQLGetInfo devolve os valores listados na tabela seguinte para os valores de InfoType relacionados com procedimentos.
| Infotipo | Valor |
|---|---|
| SQL_PROCEDURES | "N" |
| SQL_ACCESSIBLE_PROCEDURES | "N" |
| SQL_MAX_PROCEDURE_NAME_LEN | 0 |
| SQL_PROCEDURE_TERM | Cadeia vazia |
O SQLGetInfo devolve SQLSTATE HY096 (valor de argumento inválido) para valores de InfoType que estão no intervalo de tipos de informação reservados para uso pelo ODBC, mas que não são definidos pela versão do ODBC suportada pelo driver. Para determinar a que versão de ODBC um driver cumpre, uma aplicação chama SQLGetInfo com o tipo de informação SQL_DRIVER_ODBC_VER. O SQLGetInfo devolve SQLSTATE HYC00 (funcionalidade opcional não implementada) para valores de InfoType que estão no intervalo de tipos de informação reservados para uso específico do driver, mas que não são suportados pelo driver.
Todas as chamadas para SQLGetInfo requerem uma ligação aberta, exceto quando o InfoType está SQL_ODBC_VER, que devolve a versão do Driver Manager.
Tipos de Informação
Esta secção lista os tipos de informação suportados pelo SQLGetInfo. Os tipos de informação estão agrupados categoricamente e listados alfabeticamente. Os tipos de informação que foram adicionados ou renomeados para ODBC 3*.x* também estão listados.
Informações sobre o Piloto
Os seguintes valores do argumento InfoType retornam informação sobre o driver ODBC, como o número de instruções ativas, o nome da fonte de dados e o nível de conformidade com as normas de interface:
SQL_ACTIVE_ENVIRONMENTS
SQL_ASYNC_DBC_FUNCTIONS
SQL_ASYNC_MODE
SQL_ASYNC_NOTIFICATION
SQL_BATCH_ROW_COUNT
SQL_BATCH_SUPPORT
SQL_DATA_SOURCE_NAME
SQL_DRIVER_AWARE_POOLING_SUPPORTED
SQL_DRIVER_HDBC
SQL_DRIVER_HDESC
SQL_DRIVER_HENV
SQL_DRIVER_HLIB
SQL_DRIVER_HSTMT
SQL_DRIVER_NAME
SQL_DRIVER_ODBC_VER
SQL_DRIVER_VER
SQL_DYNAMIC_CURSOR_ATTRIBUTES1
SQL_DYNAMIC_CURSOR_ATTRIBUTES2
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2
SQL_FILE_USAGE
SQL_GETDATA_EXTENSIONS
SQL_INFO_SCHEMA_VIEWS
SQL_KEYSET_CURSOR_ATTRIBUTES1
SQL_KEYSET_CURSOR_ATTRIBUTES2
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS
SQL_MAX_CONCURRENT_ACTIVITIES
SQL_MAX_DRIVER_CONNECTIONS
SQL_ODBC_INTERFACE_CONFORMANCE
SQL_ODBC_VER
SQL_PARAM_ARRAY_ROW_COUNTS
SQL_PARAM_ARRAY_SELECTS
SQL_ROW_UPDATES
SQL_SEARCH_PATTERN_ESCAPE
SQL_SERVER_NAME
SQL_STANDARD_CLI_CONFORMANCE
SQL_STATIC_CURSOR_ATTRIBUTES1
SQL_STATIC_CURSOR_ATTRIBUTES2
Observação
Ao implementar SQLGetInfo, um driver pode melhorar o desempenho ao minimizar o número de vezes que essa informação é enviada ou solicitada ao servidor.
Informação do Produto DBMS
Os seguintes valores do argumento InfoType retornam informação sobre o produto SGBD, como o nome e a versão do SGBD:
SQL_DATABASE_NAME
SQL_DBMS_NAME
SQL_DBMS_VER
Informação da Fonte de Dados
Os seguintes valores do argumento InfoType devolvem informações sobre a fonte de dados, como características do cursor e capacidades de transação:
SQL_ACCESSIBLE_PROCEDURES
SQL_ACCESSIBLE_TABLES
SQL_BOOKMARK_PERSISTENCE
SQL_CATALOG_TERM
SQL_COLLATION_SEQ
SQL_CONCAT_NULL_BEHAVIOR
SQL_CURSOR_COMMIT_BEHAVIOR
SQL_CURSOR_ROLLBACK_BEHAVIOR
SQL_CURSOR_SENSITIVITY
SQL_DATA_SOURCE_READ_ONLY
SQL_DEFAULT_TXN_ISOLATION
SQL_DESCRIBE_PARAMETER
SQL_MULT_RESULT_SETS
SQL_MULTIPLE_ACTIVE_TXN
SQL_NEED_LONG_DATA_LEN
SQL_NULL_COLLATION
SQL_PROCEDURE_TERM
SQL_SCHEMA_TERM
SQL_SCROLL_OPTIONS
SQL_TABLE_TERM
SQL_TXN_CAPABLE
SQL_TXN_ISOLATION_OPTION
SQL_USER_NAME
SQL suportado
Os valores seguintes do argumento InfoType retornam informação sobre as instruções SQL suportadas pela fonte de dados. A sintaxe SQL de cada característica descrita por estes tipos de informação é a sintaxe SQL-92. Estes tipos de informação não descrevem exaustivamente toda a gramática SQL-92. Em vez disso, descrevem as partes da gramática para as quais as fontes de dados normalmente oferecem diferentes níveis de apoio. Especificamente, a maioria das instruções DDL em SQL-92 são abordadas.
As candidaturas devem determinar o nível geral de gramática suportada a partir do tipo de informação SQL_SQL_CONFORMANCE e usar os outros tipos de informação para determinar variações em relação ao nível de conformidade com as normas declaradas.
SQL_AGGREGATE_FUNCTIONS
SQL_ALTER_DOMAIN
SQL_ALTER_SCHEMA
SQL_ALTER_TABLE
SQL_ANSI_SQL_DATETIME_LITERALS
SQL_CATALOG_LOCATION
SQL_CATALOG_NAME
SQL_CATALOG_NAME_SEPARATOR
SQL_CATALOG_USAGE
SQL_COLUMN_ALIAS
SQL_CORRELATION_NAME
SQL_CREATE_ASSERTION
SQL_CREATE_CHARACTER_SET
SQL_CREATE_COLLATION
SQL_CREATE_DOMAIN
SQL_CREATE_SCHEMA
SQL_CREATE_TABLE
SQL_CREATE_TRANSLATION
SQL_DDL_INDEX
SQL_DROP_ASSERTION
SQL_DROP_CHARACTER_SET
SQL_DROP_COLLATION
SQL_DROP_DOMAIN
SQL_DROP_SCHEMA
SQL_DROP_TABLE
SQL_DROP_TRANSLATION
SQL_DROP_VIEW
SQL_EXPRESSIONS_IN_ORDERBY
SQL_GROUP_BY
SQL_IDENTIFIER_CASE
SQL_IDENTIFIER_QUOTE_CHAR
SQL_INDEX_KEYWORDS
SQL_INSERT_STATEMENT
SQL_INTEGRITY
SQL_KEYWORDS
SQL_LIKE_ESCAPE_CLAUSE
SQL_NON_NULLABLE_COLUMNS
SQL_OJ_CAPABILITIES
SQL_ORDER_BY_COLUMNS_IN_SELECT
SQL_OUTER_JOINS
SQL_PROCEDURES
SQL_QUOTED_IDENTIFIER_CASE
SQL_SCHEMA_USAGE
SQL_SPECIAL_CHARACTERS
SQL_SQL_CONFORMANCE
SQL_SUBQUERIES
SQL_UNION
Limites SQL
Os valores seguintes do argumento InfoType retornam informação sobre os limites aplicados a identificadores e cláusulas em instruções SQL, como os comprimentos máximos dos identificadores e o número máximo de colunas numa lista de seleção. As limitações podem ser impostas tanto pelo controlador como pela fonte de dados.
SQL_MAX_BINARY_LITERAL_LEN
SQL_MAX_CATALOG_NAME_LEN
SQL_MAX_CHAR_LITERAL_LEN
SQL_MAX_COLUMN_NAME_LEN
SQL_MAX_COLUMNS_IN_GROUP_BY
SQL_MAX_COLUMNS_IN_INDEX
SQL_MAX_COLUMNS_IN_ORDER_BY
SQL_MAX_COLUMNS_IN_SELECT
SQL_MAX_COLUMNS_IN_TABLE
SQL_MAX_CURSOR_NAME_LEN
SQL_MAX_IDENTIFIER_LEN
SQL_MAX_INDEX_SIZE
SQL_MAX_PROCEDURE_NAME_LEN
SQL_MAX_ROW_SIZE
SQL_MAX_ROW_SIZE_INCLUDES_LONG
SQL_MAX_SCHEMA_NAME_LEN
SQL_MAX_STATEMENT_LEN
SQL_MAX_TABLE_NAME_LEN
SQL_MAX_TABLES_IN_SELECT
SQL_MAX_USER_NAME_LEN
Informação sobre a Função Escalar
Os valores seguintes do argumento InfoType retornam informações sobre as funções escalares suportadas pela fonte de dados e pelo driver. Para mais informações sobre funções escalares, consulte o Apêndice E: Funções Escalares.
SQL_CONVERT_FUNCTIONS
SQL_NUMERIC_FUNCTIONS
SQL_STRING_FUNCTIONS
SQL_SYSTEM_FUNCTIONS
SQL_TIMEDATE_ADD_INTERVALS
SQL_TIMEDATE_DIFF_INTERVALS
SQL_TIMEDATE_FUNCTIONS
Informação de Conversão
Os seguintes valores do argumento InfoType retornam uma lista dos tipos de dados SQL para os quais a fonte de dados pode converter o tipo de dado SQL especificado com a função escalar CONVERT :
SQL_CONVERT_BIGINT
SQL_CONVERT_BINARY
SQL_CONVERT_BIT
SQL_CONVERT_CHAR
SQL_CONVERT_DATE
SQL_CONVERT_DECIMAL
SQL_CONVERT_DOUBLE
SQL_CONVERT_FLOAT
SQL_CONVERT_INTEGER
SQL_CONVERT_INTERVAL_DAY_TIME
SQL_CONVERT_INTERVAL_YEAR_MONTH
SQL_CONVERT_LONGVARBINARY
SQL_CONVERT_LONGVARCHAR
SQL_CONVERT_NUMERIC
SQL_CONVERT_REAL
SQL_CONVERT_SMALLINT
SQL_CONVERT_TIME
SQL_CONVERT_TIMESTAMP
SQL_CONVERT_TINYINT
SQL_CONVERT_VARBINARY
SQL_CONVERT_VARCHAR
Tipos de Informação Adicionados para ODBC 3.x
Os seguintes valores do argumento InfoType foram adicionados para ODBC 3.x:
SQL_ACTIVE_ENVIRONMENTS
SQL_AGGREGATE_FUNCTIONS
SQL_ALTER_DOMAIN
SQL_ALTER_SCHEMA
SQL_ANSI_SQL_DATETIME_LITERALS
SQL_ASYNC_DBC_FUNCTIONS
SQL_ASYNC_MODE
SQL_ASYNC_NOTIFICATION
SQL_BATCH_ROW_COUNT
SQL_BATCH_SUPPORT
SQL_CATALOG_NAME
SQL_COLLATION_SEQ
SQL_CONVERT_INTERVAL_DAY_TIME
SQL_CONVERT_INTERVAL_YEAR_MONTH
SQL_CREATE_ASSERTION
SQL_CREATE_CHARACTER_SET
SQL_CREATE_COLLATION
SQL_CREATE_DOMAIN
SQL_CREATE_SCHEMA
SQL_CREATE_TABLE
SQL_CREATE_TRANSLATION
SQL_CURSOR_SENSITIVITY
SQL_DDL_INDEX
SQL_DESCRIBE_PARAMETER
SQL_DM_VER
SQL_DRIVER_AWARE_POOLING_SUPPORTED
SQL_DRIVER_HDESC
SQL_DROP_ASSERTION
SQL_DROP_CHARACTER_SET
SQL_DROP_COLLATION
SQL_DROP_DOMAIN
SQL_DROP_SCHEMA
SQL_DROP_TABLE
SQL_DROP_TRANSLATION
SQL_DROP_VIEW
SQL_DYNAMIC_CURSOR_ATTRIBUTES1
SQL_DYNAMIC_CURSOR_ATTRIBUTES2
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1
SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2
SQL_INFO_SCHEMA_VIEWS
SQL_INSERT_STATEMENT
SQL_KEYSET_CURSOR_ATTRIBUTES1
SQL_KEYSET_CURSOR_ATTRIBUTES2
SQL_MAX_ASYNC_CONCURRENT_STATEMENTS
SQL_MAX_IDENTIFIER_LEN
SQL_PARAM_ARRAY_ROW_COUNTS
SQL_PARAM_ARRAY_SELECTS
SQL_STATIC_CURSOR_ATTRIBUTES1
SQL_STATIC_CURSOR_ATTRIBUTES2
SQL_XOPEN_CLI_YEAR
Tipos de Informação Renomeados para ODBC 3.x
Os seguintes valores do argumento InfoType foram renomeados para ODBC 3.x.
| Nome antigo | Novo nome |
|---|---|
| SQL_ACTIVE_CONNECTIONS | SQL_MAX_DRIVER_CONNECTIONS |
| SQL_ACTIVE_STATEMENTS | SQL_MAX_CONCURRENT_ACTIVITIES |
| SQL_MAX_OWNER_NAME_LEN | SQL_MAX_SCHEMA_NAME_LEN |
| SQL_MAX_QUALIFIER_NAME_LEN | SQL_MAX_CATALOG_NAME_LEN |
| SQL_ODBC_SQL_OPT_IEF | SQL_INTEGRITY |
| SQL_OWNER_TERM | SQL_SCHEMA_TERM |
| SQL_OWNER_USAGE | SQL_SCHEMA_USAGE |
| SQL_QUALIFIER_LOCATION | SQL_CATALOG_LOCATION |
| SQL_QUALIFIER_NAME_SEPARATOR | SQL_CATALOG_NAME_SEPARATOR |
| SQL_QUALIFIER_TERM | SQL_CATALOG_TERM |
| SQL_QUALIFIER_USAGE | SQL_CATALOG_USAGE |
Tipos de Informação Descontinuados no ODBC 3.x
Os seguintes valores do argumento InfoType foram obsoletos no ODBC 3.x. Os drivers ODBC 3.x devem continuar a suportar estes tipos de informação para compatibilidade retrocedente com aplicações ODBC 2.x. (Para mais informações sobre estes tipos, consulte o Suporte SQLGetInfo no Apêndice G: Diretrizes de Drivers para Compatibilidade Retroativa.)
SQL_FETCH_DIRECTION
SQL_LOCK_TYPES
SQL_ODBC_API_CONFORMANCE
SQL_ODBC_SQL_CONFORMANCE
SQL_POS_OPERATIONS
SQL_POSITIONED_STATEMENTS
SQL_SCROLL_CONCURRENCY
SQL_STATIC_SENSITIVITY
Descrições de Tipos de Informação
A tabela seguinte lista alfabeticamente cada tipo de informação, a versão do ODBC em que foi introduzido e a sua descrição.
| Tipo de Informação | Versão ODBC | Descrição |
|---|---|---|
| SQL_ACCESSIBLE_PROCEDURES | 1.0 | Uma cadeia de caracteres: "Y" se o utilizador conseguir executar todos os procedimentos devolvidos pelo SQLProcedures; "N" se houver procedimentos devolvidos que o utilizador não possa executar. |
| SQL_ACCESSIBLE_TABLES | 1.0 | Uma cadeia de caracteres: "Y" se o utilizador tiver privilégios SELECT garantidos para todas as tabelas retornadas pelo SQLTables; "N" se houver tabelas devolvidas que o utilizador não possa aceder. |
| SQL_ACTIVE_ENVIRONMENTS | 3.0 | Um valor SQLUSMALLINT que especifica o número máximo de ambientes ativos que o driver pode suportar. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. |
| SQL_AGGREGATE_FUNCTIONS | 3.0 | Um suporte para enumeração de máscaras de bits SQLUINTEGER para funções de agregação: SQL_AF_ALL SQL_AF_AVG SQL_AF_COUNT SQL_AF_DISTINCT SQL_AF_MAX SQL_AF_MIN SQL_AF_SUM Um driver SQL-92 compatível com o nível de entrada devolverá sempre todas estas opções conforme suportado. |
| SQL_ALTER_DOMAIN | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução ALTER DOMAIN , conforme definida em SQL-92, suportada pela fonte de dados. Um driver SQL-92 compatível com o nível completo devolverá sempre todas as máscaras de bits. Um valor de retorno de "0" significa que a instrução ALTER DOMAIN não é suportada. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_AD_ADD_DOMAIN_CONSTRAINT = A adição de uma restrição de domínio é suportada (Nível completo) SQL_AD_ADD_DOMAIN_DEFAULT = <alterar domínio><conjunto de domínio é suportada a cláusula> por defeito (Nível completo) SQL_AD_CONSTRAINT_NAME_DEFINITION = <cláusula> de definição de nome de restrição é suportada para nomear restrição de domínio (nível intermédio) SQL_AD_DROP_DOMAIN_CONSTRAINT = <é suportada a cláusula> de restrição do domínio de drop (Nível completo) SQL_AD_DROP_DOMAIN_DEFAULT = <alterar domínio><drop a cláusula> por defeito do domínio é suportada (Nível completo) Os bits seguintes especificam os atributos> de restrição suportados <se <for suportada a> restrição de domínio adicional (o bit SQL_AD_ADD_DOMAIN_CONSTRAINT é definido): SQL_AD_ADD_CONSTRAINT_DEFERRABLE (Nível completo) SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE (Nível completo) SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED (Nível completo) SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE (Nível completo) |
| SQL_ALTER_TABLE | 2.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução ALTER TABLE suportada pela fonte de dados. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_AT_ADD_COLUMN_COLLATION = <cláusula de adicionar coluna> é suportada, com a possibilidade de especificar a colação de colunas (Nível completo) (ODBC 3.0) SQL_AT_ADD_COLUMN_DEFAULT = <cláusula de adicionar coluna> é suportada, com possibilidade de especificar os valores definidos das colunas (FIPS Transitional level) (ODBC 3.0) SQL_AT_ADD_COLUMN_SINGLE = <coluna> de adição é suportada (nível de transição FIPS) (ODBC 3.0) SQL_AT_ADD_CONSTRAINT = <cláusula de adicionar coluna> é suportada, com possibilidade de especificar restrições de coluna (FIPS Nível de transição) (ODBC 3.0) SQL_AT_ADD_TABLE_CONSTRAINT = <é suportada> a cláusula de restrição de tabela para adicionar (FIPS Nível de transição) (ODBC 3.0) SQL_AT_CONSTRAINT_NAME_DEFINITION = <definição> de nome de restrições é suportada para nomear restrições de colunas e tabelas (nível intermédio) (ODBC 3.0) SQL_AT_DROP_COLUMN_CASCADE = <coluna> de drop CASCADE é suportada (nível de transição FIPS) (ODBC 3.0) SQL_AT_DROP_COLUMN_DEFAULT = <alterar coluna><drop a cláusula> de defeito é suportada (Nível intermédio) (ODBC 3.0) SQL_AT_DROP_COLUMN_RESTRICT = <drop column> RESTRICT é suportado (FIPS Transitional level) (ODBC 3.0) SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE (ODBC 3.0) SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = <drop column> RESTRICT é suportado (nível de transição FIPS) (ODBC 3.0) SQL_AT_SET_COLUMN_DEFAULT = <alterar conjunto de colunas><a cláusula> por defeito é suportada (Nível intermédio) (ODBC 3.0) Os bits seguintes especificam os atributos> de restrição de suporte <se for suportado especificar restrições de colunas ou tabelas (o bit SQL_AT_ADD_CONSTRAINT está definido): SQL_AT_CONSTRAINT_INITIALLY_DEFERRED (Nível completo) (ODBC 3.0) SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE (Nível completo) (ODBC 3.0) SQL_AT_CONSTRAINT_DEFERRABLE (Nível completo) (ODBC 3.0) SQL_AT_CONSTRAINT_NON_DEFERRABLE (Nível completo) (ODBC 3.0) |
| SQL_ASYNC_DBC_FUNCTIONS | 3,8 | Um valor SQLUINTEGER que indica se o driver pode executar funções assíncronas no handler de ligação. SQL_ASYNC_DBC_CAPABLE = O driver pode executar funções de ligação de forma assíncrona. SQL_ASYNC_DBC_NOT_CAPABLE = O driver não pode executar funções de ligação de forma assíncrona. |
| SQL_ASYNC_MODE | 3.0 | Um valor SQLUINTEGER que indica o nível de suporte assíncrono no driver: SQL_AM_CONNECTION = A execução assíncrona ao nível da ligação é suportada. Ou todos os handles de instruções associados a um dado handle de ligação estão em modo assíncrono ou todos estão em modo síncrono. Um handle de instrução numa ligação não pode estar em modo assíncrono enquanto outro handle de instrução na mesma ligação está em modo síncrono, e vice-versa. SQL_AM_STATEMENT = A execução assíncrona ao nível da instrução é suportada. Alguns handles de instrução associados a um handle de ligação podem estar em modo assíncrono, enquanto outros handles de statement na mesma ligação estão em modo síncrono. SQL_AM_NONE = Modo assíncrono não é suportado. |
| SQL_ASYNC_NOTIFICATION | 3,8 | Um valor SQLUINTEGER que indica se o driver suporta notificação assíncrona: SQL_ASYNC_NOTIFICATION_CAPABLE = A notificação de execução assíncrona é suportada pelo driver. SQL_ASYNC_NOTIFICATION_NOT_CAPABLE = A notificação de execução assíncrona não é suportada pelo driver. Existem duas categorias de operações assíncronas ODBC: operações assíncronas ao nível de ligação e operações assíncronas ao nível da instrução. Se um driver devolver SQL_ASYNC_NOTIFICATION_CAPABLE, deve suportar notificações para todas as APIs de que pode ser executado de forma assíncrona. |
| SQL_BATCH_ROW_COUNT | 3.0 | Uma máscara de bits SQLUINTEGER que enumera o comportamento do driver relativamente à disponibilidade de contagens de linhas. As seguintes máscaras de bits são usadas juntamente com o tipo de informação: SQL_BRC_ROLLED_UP = As contagens de linhas para instruções consecutivas INSERT, DELETE ou UPDATE são agrupadas numa só. Se este bit não estiver definido, estão disponíveis contagens de linhas para cada sentencia. SQL_BRC_PROCEDURES = Contagens de linhas, se existirem, estão disponíveis quando um lote é executado num procedimento armazenado. Se houver contagens de linhas, podem ser agrupadas ou individualmente, dependendo do SQL_BRC_ROLLED_UP bit. SQL_BRC_EXPLICIT = Contagens de linhas, se existirem, estão disponíveis quando um lote é executado diretamente ao chamar SQLExecute ou SQLExecDirect. Se houver contagens de linhas, podem ser agrupadas ou individualmente, dependendo do SQL_BRC_ROLLED_UP bit. |
| SQL_BATCH_SUPPORT | 3.0 | Uma máscara de bits SQLUINTEGER que enumera o suporte do driver para lotes. As seguintes máscaras de bits são usadas para determinar qual o nível suportado: SQL_BS_SELECT_EXPLICIT = O driver suporta lotes explícitos que podem ter instruções geradoras de conjuntos de resultados. SQL_BS_ROW_COUNT_EXPLICIT = O driver suporta lotes explícitos que podem ter instruções geradoras de contagem de linhas. SQL_BS_SELECT_PROC = O driver suporta procedimentos explícitos que podem ter instruções geradoras de conjuntos de resultados. SQL_BS_ROW_COUNT_PROC = O driver suporta procedimentos explícitos que podem ter instruções geradoras de contagem de linhas. |
| SQL_BOOKMARK_PERSISTENCE | 2.0 | Uma máscara de bits SQLUINTEGER que enumera as operações através das quais os favoritos persistem. As seguintes máscaras de bits são usadas juntamente com a flag para determinar através de quais opções os favoritos persistem: SQL_BP_CLOSE = Os marcadores são válidos após uma aplicação chamar SQLFreeStmt com a opção SQL_CLOSE, ou SQLCloseCursor para fechar o cursor associado a uma instrução. SQL_BP_DELETE = O marcador de uma linha é válido depois de essa linha ter sido eliminada. SQL_BP_DROP = Os favoritos são válidos depois de uma aplicação chamar SQLFreeHandle com um HandleType de SQL_HANDLE_STMT para eliminar uma instrução. SQL_BP_TRANSACTION = Os favoritos são válidos após uma aplicação confirmar ou reverter uma transação. SQL_BP_UPDATE = O marcador de uma linha é válido após qualquer coluna dessa linha ter sido atualizada, incluindo as colunas-chave. SQL_BP_OTHER_HSTMT = Um marcador associado a uma instrução pode ser usado com outra. A menos que SQL_BP_CLOSE ou SQL_BP_DROP seja especificado, o cursor na primeira instrução deve estar aberto. |
| SQL_CATALOG_LOCATION | 2.0 | Um valor SQLUSMALLINT que indica a posição do catálogo num nome de tabela qualificado: SQL_CL_START SQL_CL_END Por exemplo, um driver Xbase devolve SQL_CL_START porque o nome do diretório (catálogo) está no início do nome da tabela, como em \EMPDATA\EMP. DBF. Um driver ORACLE Server devolve SQL_CL_END porque o catálogo está no final do nome da tabela, como em ADMIN. EMP@EMPDATA. Um driver SQL-92 Full level-conformer irá sempre devolver SQL_CL_START. Um valor de 0 é devolvido se os catálogos não forem suportados pela fonte de dados. Para determinar se os catálogos são suportados, uma aplicação chama SQLGetInfo com o SQL_CATALOG_NAME tipo de informação. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_QUALIFIER_LOCATION. |
| SQL_CATALOG_NAME | 3.0 | Uma cadeia de caracteres: "Y" se o servidor suportar nomes de catálogo, ou "N" se não suportar. Um driver SQL-92 Full level-conformant devolverá sempre "Y". |
| SQL_CATALOG_NAME_SEPARATOR | 1.0 | Uma cadeia de caracteres: o carácter ou caracteres que a fonte de dados define como o separador entre um nome de catálogo e o elemento qualificado do nome que o segue ou precede. Uma cadeia vazia é devolvida se os catálogos não forem suportados pela fonte de dados. Para determinar se os catálogos são suportados, uma aplicação chama SQLGetInfo com o SQL_CATALOG_NAME tipo de informação. Um driver SQL-92 Full level-conformant devolverá sempre ".". Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_QUALIFIER_NAME_SEPARATOR. |
| SQL_CATALOG_TERM | 1.0 | Uma cadeia de caracteres com o nome do fornecedor da fonte de dados para um catálogo; por exemplo, "base de dados" ou "diretório". Esta corda pode estar em majúsculas agudas, graves ou mistas. Uma cadeia vazia é devolvida se os catálogos não forem suportados pela fonte de dados. Para determinar se os catálogos são suportados, uma aplicação chama SQLGetInfo com o SQL_CATALOG_NAME tipo de informação. Um driver SQL-92 Full level-conformant devolverá sempre "catálogo". Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_QUALIFIER_TERM. |
| SQL_CATALOG_USAGE | 2.0 | Uma máscara de bits SQLUINTEGER que enumera as instruções nas quais os catálogos podem ser usados. As seguintes máscaras de bits são usadas para determinar onde os catálogos podem ser usados: SQL__DML_STATEMENTS = Catálogos são suportados em todas as instruções da Linguagem de Manipulação de Dados: SELECT, INSERT, UPDATE, DELETE e, se suportado, SELECT FOR UPDATE e posicionados instruções update e delete. SQL__PROCEDURE_INVOCATION = Os catálogos são suportados na instrução de invocação do procedimento ODBC. SQL__TABLE_DEFINITION = Os catálogos são suportados em todas as instruções de definição de tabelas: CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP TABLE e DROP VIEW. SQL__INDEX_DEFINITION = Os catálogos são suportados em todas as instruções de definição de índice: CREATE INDEX e DROP INDEX. SQL__PRIVILEGE_DEFINITION = Os catálogos são suportados em todas as declarações de definição de privilégio: GRANT e REVOKE. Um valor de 0 é devolvido se os catálogos não forem suportados pela fonte de dados. Para determinar se os catálogos são suportados, uma aplicação chama SQLGetInfo com o SQL_CATALOG_NAME tipo de informação. Um driver SQL-92 Full level-conformant devolverá sempre uma máscara de bits com todos estes bits definidos. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_QUALIFIER_USAGE. |
| SQL_COLLATION_SEQ | 3.0 | O nome da sequência de colação. Esta é uma cadeia de caracteres que indica o nome da colação padrão para o conjunto de caracteres padrão deste servidor (por exemplo, 'ISO 8859-1' ou EBCDIC). Se isto for desconhecido, uma cadeia vazia será devolvida. Um driver SQL-92 Full level-conformant devolverá sempre uma string não vazia. |
| SQL_COLUMN_ALIAS | 2.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suportar alias de coluna; caso contrário, "N". Um alias de coluna é um nome alternativo que pode ser especificado para uma coluna na lista select usando uma cláusula AS. Um driver SQL-92 compatível com o nível de entrada devolverá sempre "Y". |
| SQL_CONCAT_NULL_BEHAVIOR | 1.0 | Um valor SQLUSMALLINT que indica como a fonte de dados lida com a concatenação de colunas de tipos de dados de carácter com valores NULL com colunas de tipos de dados de carácter não NULL: SQL_CB_NULL = O resultado tem valor NULL. SQL_CB_NON_NULL = O resultado é a concatenação de colunas ou colunas com valores não NULL. Um driver SQL-92 compatível com o nível de entrada irá sempre devolver SQL_CB_NULL. |
| SQL_CONVERT_BIGINT SQL_CONVERT_BINARY SQL_CONVERT_BIT SQL_CONVERT_CHAR SQL_CONVERT_GUID SQL_CONVERT_DATE SQL_CONVERT_DECIMAL SQL_CONVERT_DOUBLE SQL_CONVERT_FLOAT SQL_CONVERT_INTEGER SQL_CONVERT_INTERVAL_YEAR_MONTH SQL_CONVERT_INTERVAL_DAY_TIME SQL_CONVERT_LONGVARBINARY SQL_CONVERT_LONGVARCHAR SQL_CONVERT_NUMERIC SQL_CONVERT_REAL SQL_CONVERT_SMALLINT SQL_CONVERT_TIME SQL_CONVERT_TIMESTAMP SQL_CONVERT_TINYINT SQL_CONVERT_VARBINARY SQL_CONVERT_VARCHAR |
1.0 | Uma máscara de bits SQLUINTEIR. A máscara de bits indica as conversões suportadas pela fonte de dados com a função escalar CONVERT para dados do tipo nomeado no InfoType. Se a máscara de bits for zero, a fonte de dados não suporta quaisquer conversões a partir dos dados do tipo nomeado, incluindo a conversão para o mesmo tipo de dado. Por exemplo, para determinar se uma fonte de dados suporta a conversão de SQL_INTEGER dados para o SQL_BIGINT tipo de dado, uma aplicação chama SQLGetInfo com o InfoType de SQL_CONVERT_INTEGER. A aplicação realiza uma operação AND com a máscara de bits e a SQL_CVT_BIGINT retornadas. Se o valor resultante for diferente de zero, a conversão é suportada. As seguintes máscaras de bits são usadas para determinar quais as conversões suportadas: SQL_CVT_BIGINT (ODBC 1.0) SQL_CVT_BINARY (ODBC 1.0) SQL_CVT_BIT (ODBC 1.0) SQL_CVT_GUID (ODBC 3.5) SQL_CVT_CHAR (ODBC 1.0) SQL_CVT_DATE (ODBC 1.0) SQL_CVT_DECIMAL (ODBC 1.0) SQL_CVT_DOUBLE (ODBC 1.0) SQL_CVT_FLOAT (ODBC 1.0) SQL_CVT_INTEGER (ODBC 1.0) SQL_CVT_INTERVAL_YEAR_MONTH (ODBC 3.0) SQL_CVT_INTERVAL_DAY_TIME (ODBC 3.0) SQL_CVT_LONGVARBINARY (ODBC 1.0) SQL_CVT_LONGVARCHAR (ODBC 1.0) SQL_CVT_NUMERIC (ODBC 1.0) SQL_CVT_REAL (ODBC 1.0) SQL_CVT_SMALLINT (ODBC 1.0) SQL_CVT_TIME (ODBC 1.0) SQL_CVT_TIMESTAMP (ODBC 1.0) SQL_CVT_TINYINT (ODBC 1.0) SQL_CVT_VARBINARY (ODBC 1.0) SQL_CVT_VARCHAR (ODBC 1.0) |
| SQL_CONVERT_FUNCTIONS | 1.0 | Uma máscara de bits SQLUINTEGER que enumera as funções de conversão escalar suportadas pelo driver e pela fonte de dados associada. A seguinte máscara de bits é usada para determinar quais as funções de conversão suportadas: SQL_FN_CVT_CASTSQL_FN_CVT_CONVERT |
| SQL_CORRELATION_NAME | 1.0 | Um valor SQLUSMALLINT que indica se os nomes de correlação de tabelas são suportados: SQL_CN_NONE = Nomes de correlação não são suportados. SQL_CN_DIFFERENT = Nomes de correlação são suportados, mas devem diferir dos nomes das tabelas que representam. SQL_CN_ANY = Nomes de correlação são suportados e podem ser qualquer nome válido definido pelo utilizador. Um driver SQL-92 compatível com o nível de entrada irá sempre devolver SQL_CN_ANY. |
| SQL_CREATE_ASSERTION | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE ASSERTION , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CA_CREATE_ASSERTION Os bits seguintes especificam o atributo de restrição suportado se a capacidade de especificar explicitamente os atributos de restrição for suportada (ver os tipos de informação SQL_ALTER_TABLE e SQL_CREATE_TABLE): SQL_CA_CONSTRAINT_INITIALLY_DEFERRED SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE SQL_CA_CONSTRAINT_DEFERRABLE SQL_CA_CONSTRAINT_NON_DEFERRABLE Um driver SQL-92 Full level-conformant devolverá sempre todas estas opções conforme suportado. Um valor de retorno de "0" significa que a instrução CREATE ASSERTION não é suportada. |
| SQL_CREATE_CHARACTER_SET | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE CHARACTER SET , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CCS_CREATE_CHARACTER_SET SQL_CCS_COLLATE_CLAUSE SQL_CCS_LIMITED_COLLATION Um driver SQL-92 Full level-conformant devolverá sempre todas estas opções conforme suportado. Um valor de retorno de "0" significa que a instrução CREATE CHARACTER SET não é suportada. |
| SQL_CREATE_COLLATION | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE COLLATION , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_CCOL_CREATE_COLLATION Um driver SQL-92 Full level-conformant devolverá sempre esta opção conforme suportado. Um valor de retorno de "0" significa que a instrução CREATE COLLATION não é suportada. |
| SQL_CREATE_DOMAIN | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE DOMAIN , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CDO_CREATE_DOMAIN = A instrução CREATE DOMAIN é suportada (nível Intermédio). SQL_CDO_CONSTRAINT_NAME_DEFINITION = <definição> de nome de restrições é suportada para nomear restrições de domínio (nível intermédio). Os bits seguintes especificam a capacidade de criar restrições de coluna: SQL_CDO_DEFAULT = Especificar restrições de domínio é suportado (Nível intermédio) SQL_CDO_CONSTRAINT = Especificar os padrões de domínio é suportado (Nível Intermédio) SQL_CDO_COLLATION = Especificar que a colação do domínio é suportada (Nível completo) Os bits seguintes especificam os atributos de restrição suportados se for suportado especificar restrições de domínio (SQL_CDO_DEFAULT é definido): SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED (Nível completo) SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE (Nível completo) SQL_CDO_CONSTRAINT_DEFERRABLE (Nível completo) SQL_CDO_CONSTRAINT_NON_DEFERRABLE (Nível completo) Um valor de retorno de "0" significa que a instrução CREATE DOMAIN não é suportada. |
| SQL_CREATE_SCHEMA | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE SCHEMA , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CS_CREATE_SCHEMA SQL_CS_AUTHORIZATION SQL_CS_DEFAULT_CHARACTER_SET Um driver SQL-92 Intermediário compatível com níveis irá sempre retornar as opções de SQL_CS_CREATE_SCHEMA e SQL_CS_AUTHORIZATION conforme suportado. Estes também devem ser suportados ao nível de entrada do SQL-92, mas não necessariamente como instruções SQL. Um driver SQL-92 Full level-conformant devolverá sempre todas estas opções conforme suportado. |
| SQL_CREATE_TABLE | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE TABLE , conforme definida em SQL-92, suportada pela fonte de dados. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CT_CREATE_TABLE = A instrução CREATE TABLE é suportada. (Nível de entrada) SQL_CT_TABLE_CONSTRAINT = Especificar restrições de tabela é suportado (FIPS Nível de transição) SQL_CT_CONSTRAINT_NAME_DEFINITION = A <cláusula de definição> do nome da restrição é suportada para nomear restrições de colunas e tabelas (nível intermédio) Os bits seguintes especificam a capacidade de criar tabelas temporárias: SQL_CT_COMMIT_PRESERVE = As linhas eliminadas são preservadas no commit. (Nível completo) SQL_CT_COMMIT_DELETE = As linhas apagadas são apagadas no commit. (Nível completo) SQL_CT_GLOBAL_TEMPORARY = Podem ser criadas tabelas temporárias globais. (Nível completo) SQL_CT_LOCAL_TEMPORARY = Podem ser criadas tabelas temporárias locais. (Nível completo) Os bits seguintes especificam a capacidade de criar restrições de coluna: SQL_CT_COLUMN_CONSTRAINT = Especificação de restrições de coluna é suportada (FIPS Nível de transição) SQL_CT_COLUMN_DEFAULT = É suportado especificar os valores predefinidos das colunas (FIPS Nível de transição) SQL_CT_COLUMN_COLLATION = Especificar que a colação de colunas é suportada (Nível completo) Os bits seguintes especificam os atributos de restrição suportados se for suportado especificar restrições de coluna ou tabela: SQL_CT_CONSTRAINT_INITIALLY_DEFERRED (Nível completo) SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE (Nível completo) SQL_CT_CONSTRAINT_DEFERRABLE (Nível completo) SQL_CT_CONSTRAINT_NON_DEFERRABLE (Nível completo) |
| SQL_CREATE_TRANSLATION | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE TRANSLATION , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_CTR_CREATE_TRANSLATION Um driver SQL-92 Full level-conformant irá sempre devolver estas opções conforme suportado. Um valor de retorno de "0" significa que a instrução CREATE TRANSLATION não é suportada. |
| SQL_CREATE_VIEW | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução CREATE VIEW , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_CV_CREATE_VIEW SQL_CV_CHECK_OPTION SQL_CV_CASCADED SQL_CV_LOCAL Um valor de retorno de "0" significa que a instrução CREATE VIEW não é suportada. Um driver SQL-92 compatível com o nível de entrada devolverá sempre as opções de SQL_CV_CREATE_VIEW e SQL_CV_CHECK_OPTION conforme suportado. Um driver SQL-92 Full level-conformant devolverá sempre todas estas opções conforme suportado. |
| SQL_CURSOR_COMMIT_BEHAVIOR | 1.0 | Um valor SQLUSMALLINT que indica como uma operação COMMIT afeta os cursores e instruções preparadas na fonte de dados (o comportamento da fonte de dados quando se faz commit numa transação). O valor deste atributo refletirá o estado atual da próxima configuração: SQL_COPT_SS_PRESERVE_CURSORS. SQL_CB_DELETE = Fechar cursores e apagar instruções preparadas. Para voltar a usar o cursor, a aplicação tem de se repreparar e reexecutar a instrução. SQL_CB_CLOSE = Fechar cursores. Para instruções preparadas, a aplicação pode chamar SQLExecute na instrução sem voltar a chamar SQLPrepose . O padrão para o driver SQL ODBC é SQL_CB_CLOSE. Isto significa que o driver SQL ODBC fechará o(s) cursor(es) quando fizer commit de uma transação. SQL_CB_PRESERVE = Preservar os cursores na mesma posição que antes da operação COMMITTE . A aplicação pode continuar a recolher dados, ou pode fechar o cursor e reexecutar a instrução sem a repreparar. |
| SQL_CURSOR_ROLLBACK_BEHAVIOR | 1.0 | Um valor SQLUSMALLINT que indica como uma operação ROLLBACK afeta os cursores e as instruções preparadas na fonte de dados: SQL_CB_DELETE = Fechar cursores e apagar instruções preparadas. Para voltar a usar o cursor, a aplicação tem de se repreparar e reexecutar a instrução. SQL_CB_CLOSE = Fechar cursores. Para instruções preparadas, a aplicação pode chamar SQLExecute na instrução sem voltar a chamar SQLPrepose . SQL_CB_PRESERVE = Manter os cursores na mesma posição de antes da operação ROLLBACK . A aplicação pode continuar a recolher dados, ou pode fechar o cursor e reexecutar a instrução sem a repreparar. |
| SQL_CURSOR_SENSITIVITY | 3.0 | Um valor SQLUINTEGER que indica o suporte para sensibilidade do cursor: SQL_INSENSITIVE = Todos os cursores na alavanca da instrução mostram o conjunto de resultados sem refletir quaisquer alterações feitas por qualquer outro cursor dentro da mesma transação. SQL_UNSPECIFIED = Não é especificado se os cursores no handler da instrução tornam visíveis as alterações feitas a um resultado definido por outro cursor dentro da mesma transação. Os cursores no handle da instrução podem não mostrar nenhuma, algumas ou todas essas alterações. SQL_SENSITIVE = Os cursores são sensíveis a alterações feitas por outros cursores dentro da mesma transação. Um driver compatível com o nível de entrada SQL-92 devolverá sempre a opção de SQL_UNSPECIFIED conforme suportado. Um driver SQL-92 Full level-conformant devolverá sempre a opção de SQL_INSENSITIVE conforme suportado. |
| SQL_DATA_SOURCE_NAME | 1.0 | Uma cadeia de caracteres com o nome da fonte de dados usada durante a ligação. Se a aplicação chamada SQLConnect, este é o valor do argumento szDSN . Se a aplicação chamada SQLDriverConnect ou SQLBrowseConnect, este é o valor da palavra-chave DSN na cadeia de ligação passada ao driver. Se o cadeia de ligação não contivesse a palavra-chave DSN (como quando contém a palavra-chave DRIVER), esta é uma cadeia vazia. |
| SQL_DATA_SOURCE_READ_ONLY | 1.0 | Uma sequência de caracteres. "Y" se a fonte de dados estiver definida para modo APENAS LEITURA, "N" se for diferente. Esta característica aplica-se apenas à própria fonte de dados; não é uma característica do driver que permite o acesso à fonte de dados. Um driver que é leitura/escrita pode ser usado com uma fonte de dados que é apenas leitura. Se um driver for apenas de leitura, todas as suas fontes de dados devem ser apenas de leitura e devem devolver SQL_DATA_SOURCE_READ_ONLY. |
| SQL_DATABASE_NAME | 1.0 | Uma cadeia de caracteres com o nome da base de dados atual em uso, se a fonte de dados definir um objeto nomeado chamado "base de dados". No ODBC 3.x, o valor devolvido para este InfoType também pode ser devolvido chamando SQLGetConnectAttr com um argumento de atributo de SQL_ATTR_CURRENT_CATALOG. |
| SQL_DATETIME_LITERALS | 3.0 | Uma máscara de bits SQLUINTEGER enumerando os literais data-hora SQL-92 suportados pela fonte de dados. Note-se que estes são os literais data-hora listados na especificação SQL-92 e são separados das cláusulas de escape de data-hora definidas pelo ODBC. Para mais informações sobre as cláusulas de escape de data-hora do ODBC, veja Literal Data, Hora e Hora. Um controlador FIPS Transicional conforme ao nível irá sempre retornar o valor "1" na máscara de bits para os bits da lista seguinte. Um valor de "0" significa que os literais de data-hora em SQL-92 não são suportados. As seguintes máscaras de bits são usadas para determinar quais os literais suportados: SQL_DL_SQL92_DATE SQL_DL_SQL92_TIME SQL_DL_SQL92_TIMESTAMP SQL_DL_SQL92_INTERVAL_YEAR SQL_DL_SQL92_INTERVAL_MONTH SQL_DL_SQL92_INTERVAL_DAY SQL_DL_SQL92_INTERVAL_HOUR SQL_DL_SQL92_INTERVAL_MINUTE SQL_DL_SQL92_INTERVAL_SECOND SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND |
| SQL_DBMS_NAME | 1.0 | Uma cadeia de caracteres com o nome do produto SGBD acedida pelo driver. |
| SQL_DBMS_VER | 1.0 | Uma cadeia de caracteres que indica a versão do produto SGBD acedida pelo driver. A versão é da forma ##.##.###, onde os dois primeiros dígitos são a versão maior, os dois dígitos seguintes a versão menor e os últimos quatro dígitos são a versão de libertação. O driver deve renderizar a versão do produto SGBD nesta forma, mas também pode acrescentar a versão específica do produto do SGBD. Por exemplo, "04.01.0000 Rdb 4.1". |
| SQL_DDL_INDEX | 3.0 | Um valor SQLUINTEGER que indica suporte para criação e eliminação de índices: SQL_DI_CREATE_INDEX SQL_DI_DROP_INDEX |
| SQL_DEFAULT_TXN_ISOLATION | 1.0 | Um valor SQLUINTEGER que indica o nível padrão de isolamento de transações suportado pelo driver ou fonte de dados, ou zero se a fonte de dados não suportar transações. Os seguintes termos são usados para definir níveis de isolamento de transações: Leitura Suja A Transação 1 muda uma linha. A transação 2 lê a linha alterada antes da transação 1 confirmar a alteração. Se a transação 1 reverter a alteração, a transação 2 terá lido uma linha que é considerada como nunca existiu. Leitura não repetível A Transação 1 lê uma linha. A Transação 2 atualiza ou apaga essa linha e compromete esta alteração. Se a transação 1 tentar reler a linha, receberá valores de linha diferentes ou descobrirá que a linha foi eliminada. Fantasma A Transação 1 lê um conjunto de linhas que satisfazem alguns critérios de pesquisa. A Transação 2 gera uma ou mais linhas (através de inserções ou atualizações) que correspondem aos critérios de pesquisa. Se a transação 1 reexecutar a instrução que lê as linhas, recebe um conjunto diferente de linhas. Se a fonte de dados suportar transações, o driver devolve uma das seguintes máscaras de bit: SQL_TXN_READ_UNCOMMITTED = Leituras sujas, leituras não repetíveis e fantasmas são possíveis. SQL_TXN_READ_COMMITTED = Leituras sujas não são possíveis. Leituras e fantasmas não repetíveis são possíveis. SQL_TXN_REPEATABLE_READ = Leituras sujas e leituras não repetíveis não são possíveis. Fantasmas são possíveis. SQL_TXN_SERIALIZABLE = As transações são serializáveis. Transações serializáveis não permitem leituras sujas, leituras não repetíveis ou fantasmas. |
| SQL_DESCRIBE_PARAMETER | 3.0 | Uma cadeia de caracteres: "Y" se os parâmetros puderem ser descritos; "N", se não. Um driver SQL-92 Full level-conformant normalmente devolverá "Y" porque suportará a instrução DESCRIBE INPUT . No entanto, como isto não especifica diretamente o suporte SQL subjacente, descrever parâmetros pode não ser suportado, mesmo num driver SQL-92 Full level-conforme. |
| SQL_DM_VER | 3.0 | Uma cadeia de caracteres com a versão do Driver Manager. A versão é da forma ##.###.####.#, onde: O primeiro conjunto de dois dígitos é a versão maior ODBC, conforme dada pela constante SQL_SPEC_MAJOR. O segundo conjunto de dois dígitos é a versão ODBC menor, conforme dado pela constante SQL_SPEC_MINOR. O terceiro conjunto de quatro dígitos é o número principal de construção do Driver Manager. O último conjunto de quatro dígitos corresponde ao número de construção menor do Driver Manager. A versão do Gestor de Controladores do Windows 7 é a 03.80. A versão do Gestor de Controladores do Windows 8 é a 03.81. |
| SQL_DRIVER_AWARE_POOLING_SUPPORTED | 3,8 | Um valor SQLUINTEGER que indica se o driver suporta pooling consciente do driver. (Para mais informações, veja Driver-Aware Pooling de Ligações. SQL_DRIVER_AWARE_POOLING_CAPABLE indica que o driver pode suportar um mecanismo de pooling consciente do driver. SQL_DRIVER_AWARE_POOLING_NOT_CAPABLE indica que o driver não pode suportar um mecanismo de pooling consciente do driver. Um condutor não precisa de implementar SQL_DRIVER_AWARE_POOLING_SUPPORTED e o Gestor de Condutores não irá respeitar o valor de devolução do condutor. |
| SQL_DRIVER_HDBCSQL_DRIVER_HENV | 1.0 | Um valor SQLULEN, o handle do ambiente ou handle de ligação do driver, determinado pelo argumento InfoType. Estes tipos de informação são implementados apenas pelo Driver Manager. |
| SQL_DRIVER_HDESC | 3.0 | Um valor SQLULEN, o handler descriptor do driver determinado pelo handler descriptor do Driver Manager, que deve ser passado na entrada em *InfoValuePtr pela aplicação. Neste caso, InfoValuePtr é tanto um argumento de entrada como de saída. O handle do descritor de entrada passado em *InfoValuePtr deve ter sido explicitamente ou implicitamente alocado no ConnectionHandle. A aplicação deve fazer uma cópia do handle descritor do Driver Manager antes de chamar SQLGetInfo com este tipo de informação, para garantir que o handle não é sobrescrito na saída. Este tipo de informação é implementado apenas pelo Driver Manager. |
| SQL_DRIVER_HLIB | 2.0 | Um valor SQLULEN, o hinst da biblioteca de cargas regressava ao Gestor de Drivers quando carregava a DLL do driver num sistema operativo Microsoft Windows, ou o seu equivalente noutro sistema operativo. O handle é válido apenas para o handle de ligação especificado na chamada ao SQLGetInfo. Este tipo de informação é implementado apenas pelo Driver Manager. |
| SQL_DRIVER_HSTMT | 1.0 | Um valor SQLULEN, o handle da instrução do driver determinado pelo handle da instrução Driver Manager, que deve ser passado na entrada em *InfoValuePtr pela aplicação. Neste caso, InfoValuePtr é tanto um argumento de entrada como de saída. O handle da instrução de entrada passado em *InfoValuePtr deve ter sido atribuído ao argumento ConnectionHandle. A aplicação deve fazer uma cópia do handle da instrução do Driver Manager antes de chamar SQLGetInfo com este tipo de informação, para garantir que o handle não é sobrescrito na saída. Este tipo de informação é implementado apenas pelo Driver Manager. |
| SQL_DRIVER_NAME | 1.0 | Uma cadeia de caracteres com o nome do ficheiro do driver usado para aceder à fonte de dados. |
| SQL_DRIVER_ODBC_VER | 2.0 | Uma cadeia de caracteres com a versão do ODBC que o driver suporta. A versão é da forma ##.##, onde os dois primeiros dígitos são a versão maior e os dois dígitos seguintes a versão menor. SQL_SPEC_MAJOR e SQL_SPEC_MINOR definem os números de versão maior e menor. Para a versão do ODBC descrita neste manual, estes são 3 e 0, e o driver deve devolver "03.00". O ODBC Driver Manager não modifica o valor de retorno do SQLGetInfo(SQL_DRIVER_ODBC_VER) para manter a compatibilidade retroativa com aplicações existentes. O driver especifica qual o valor que será devolvido. No entanto, um driver que suporta extensibilidade de tipos de dados C deve devolver 3.8 (ou superior) quando uma aplicação chama SQLSetEnvAttr para definir SQL_ATTR_ODBC_VERSION para 3.8. Para mais informações, consulte Tipos de Dados C no ODBC. |
| SQL_DRIVER_VER | 1.0 | Uma cadeia de caracteres com a versão do driver e, opcionalmente, uma descrição do driver. No mínimo, a versão é da forma ##.##.##, onde os dois primeiros dígitos são a versão maior, os dois seguintes a versão menor e os últimos quatro dígitos são a versão de release. |
| SQL_DROP_ASSERTION | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP ASSERTION , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_DA_DROP_ASSERTION Um driver SQL-92 Full level-conformant devolverá sempre esta opção conforme suportado. |
| SQL_DROP_CHARACTER_SET | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP CHARACTER SET , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_DCS_DROP_CHARACTER_SET Um driver SQL-92 Full level-conformant devolverá sempre esta opção conforme suportado. |
| SQL_DROP_COLLATION | 3.0 | Uma máscara de bits SQLUINTEGER enumerando as cláusulas na instrução DROP COLLATION , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_DC_DROP_COLLATION Um driver SQL-92 Full level-conformant devolverá sempre esta opção conforme suportado. |
| SQL_DROP_DOMAIN | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP DOMAIN , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_DD_DROP_DOMAIN SQL_DD_CASCADE SQL_DD_RESTRICT Um driver SQL-92 Intermediário compatível com níveis irá sempre retornar todas estas opções conforme suportado. |
| SQL_DROP_SCHEMA | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP SCHEMA , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_DS_DROP_SCHEMA SQL_DS_CASCADE SQL_DS_RESTRICT Um driver SQL-92 Intermediário compatível com níveis irá sempre retornar todas estas opções conforme suportado. |
| SQL_DROP_TABLE | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP TABLE , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_DT_DROP_TABLE SQL_DT_CASCADE SQL_DT_RESTRICT Um driver compatível com o nível de transição FIPS devolverá sempre todas estas opções conforme suportado. |
| SQL_DROP_TRANSLATION | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP TRANSLATION , conforme definida em SQL-92, suportada pela fonte de dados. A seguinte máscara de bits é usada para determinar quais as cláusulas suportadas: SQL_DTR_DROP_TRANSLATION Um driver SQL-92 Full level-conformant devolverá sempre esta opção conforme suportado. |
| SQL_DROP_VIEW | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as cláusulas na instrução DROP VIEW , conforme definida em SQL-92, suportada pela fonte de dados. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas: SQL_DV_DROP_VIEW SQL_DV_CASCADE SQL_DV_RESTRICT Um driver compatível com o nível de transição FIPS devolverá sempre todas estas opções conforme suportado. |
| SQL_DYNAMIC_CURSOR_ATTRIBUTES1 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor dinâmico suportados pelo driver. Esta máscara de bits contém o primeiro subconjunto de atributos; Para o segundo subconjunto, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES2. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA1_NEXT = Um argumento FetchOrientation de SQL_FETCH_NEXT é suportado numa chamada ao SQLFetchScroll quando o cursor é um cursor dinâmico. SQL_CA1_ABSOLUTE = argumentos FetchOrientation de SQL_FETCH_FIRST, SQL_FETCH_LAST e SQL_FETCH_ABSOLUTE são suportados numa chamada ao SQLFetchScroll quando o cursor é um cursor dinâmico. (O conjunto de linhas que será obtido é independente da posição atual do cursor.) SQL_CA1_RELATIVE = argumentos FetchOrientation de SQL_FETCH_PRIOR e SQL_FETCH_RELATIVE são suportados numa chamada ao SQLFetchScroll quando o cursor é um cursor dinâmico. (O conjunto de linhas que será obtido depende da posição atual do cursor. Note-se que isto está separado de SQL_FETCH_NEXT porque, num cursor apenas para a frente, apenas SQL_FETCH_NEXT é suportado.) SQL_CA1_BOOKMARK = Um argumento FetchOrientation de SQL_FETCH_BOOKMARK é suportado numa chamada ao SQLFetchScroll quando o cursor é um cursor dinâmico. SQL_CA1_LOCK_EXCLUSIVE = Um argumento LockType de SQL_LOCK_EXCLUSIVE é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_LOCK_NO_CHANGE = Um argumento LockType de SQL_LOCK_NO_CHANGE é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_LOCK_UNLOCK = Um argumento LockType de SQL_LOCK_UNLOCK é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_POS_POSITION = Um argumento de Operação de SQL_POSITION é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_POS_UPDATE = Um argumento de Operação de SQL_UPDATE é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_POS_DELETE = Um argumento de Operação de SQL_DELETE é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_POS_REFRESH = Um argumento de Operação de SQL_REFRESH é suportado numa chamada ao SQLSetPos quando o cursor é um cursor dinâmico. SQL_CA1_POSITIONED_UPDATE = Uma ATUALIZAÇÃO ONDE A INSTRUÇÃO ATUAL DE SQL É SUPORTADA QUANDO O CURSOR É UM CURSOR DINÂMICO. (Um driver compatível com SQL-92 de nível de entrada devolverá sempre esta opção conforme suportado.) SQL_CA1_POSITIONED_DELETE = UM DELETE ONDE A INSTRUÇÃO ATUAL DE SQL é suportada quando o cursor é um cursor dinâmico. (Um driver compatível com SQL-92 de nível de entrada devolverá sempre esta opção conforme suportado.) SQL_CA1_SELECT_FOR_UPDATE = uma instrução SELECT FOR UPDATE SQL é suportada quando o cursor é um cursor dinâmico. (Um driver compatível com SQL-92 de nível de entrada devolverá sempre esta opção conforme suportado.) SQL_CA1_BULK_ADD = Um argumento de Operação de SQL_ADD é suportado numa chamada a SQLBulkOperations quando o cursor é um cursor dinâmico. SQL_CA1_BULK_UPDATE_BY_BOOKMARK = Um argumento de Operação de SQL_UPDATE_BY_BOOKMARK é suportado numa chamada a SQLBulkOperations quando o cursor é um cursor dinâmico. SQL_CA1_BULK_DELETE_BY_BOOKMARK = Um argumento de Operação de SQL_DELETE_BY_BOOKMARK é suportado numa chamada a SQLBulkOperations quando o cursor é um cursor dinâmico. SQL_CA1_BULK_FETCH_BY_BOOKMARK = Um argumento Operação de SQL_FETCH_BY_BOOKMARK é suportado numa chamada a SQLBulkOperations quando o cursor é um cursor dinâmico. Um driver SQL-92 Intermediário compatível com níveis normalmente devolve as opções SQL_CA1_NEXT, SQL_CA1_ABSOLUTE e SQL_CA1_RELATIVE conforme suportado, porque suporta cursores roláveis através da instrução SQL FETCH embutida. No entanto, como isto não determina diretamente o suporte SQL subjacente, cursores scrolláveis podem não ser suportados, mesmo para um driver SQL-92 Intermediário compatível com o nível. |
| SQL_DYNAMIC_CURSOR_ATTRIBUTES2 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor dinâmico suportados pelo driver. Esta máscara de bits contém o segundo subconjunto de atributos; para o primeiro subconjunto, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES1. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA2_READ_ONLY_CONCURRENCY = É suportado um cursor dinâmico apenas de leitura, no qual não são permitidas atualizações. (O atributo da instrução SQL_ATTR_CONCURRENCY pode ser SQL_CONCUR_READ_ONLY para um cursor dinâmico). SQL_CA2_LOCK_CONCURRENCY = Um cursor dinâmico que utiliza o nível mais baixo de bloqueio suficiente para garantir que a linha pode ser atualizada é suportado. (O atributo da instrução SQL_ATTR_CONCURRENCY pode ser SQL_CONCUR_LOCK para um cursor dinâmico.) Estes bloqueios devem ser consistentes com o nível de isolamento da transação definido pelo atributo SQL_ATTR_TXN_ISOLATION conexão. SQL_CA2_OPT_ROWVER_CONCURRENCY = É suportado um cursor dinâmico que utiliza o controlo otimista de concorrência comparando versões de linha. (O atributo da instrução SQL_ATTR_CONCURRENCY pode ser SQL_CONCUR_ROWVER para um cursor dinâmico.) SQL_CA2_OPT_VALUES_CONCURRENCY = É suportado um cursor dinâmico que utiliza o controlo de concorrência otimista para comparar valores. (O atributo da instrução SQL_ATTR_CONCURRENCY pode ser SQL_CONCUR_VALUES para um cursor dinâmico.) SQL_CA2_SENSITIVITY_ADDITIONS = As linhas adicionadas são visíveis para um cursor dinâmico; O cursor pode deslocar-se até essas linhas. (Onde estas linhas são adicionadas ao cursor depende do driver.) SQL_CA2_SENSITIVITY_DELETIONS = As linhas eliminadas já não estão disponíveis para um cursor dinâmico e não deixam um "buraco" no conjunto de resultados; Depois de o cursor dinâmico deslizar a partir de uma linha eliminada, não pode voltar a essa linha. SQL_CA2_SENSITIVITY_UPDATES = As atualizações das linhas são visíveis por um cursor dinâmico; Se o cursor dinâmico deslocar e regressar a uma linha atualizada, os dados devolvidos pelo cursor são os dados atualizados, não os dados originais. SQL_CA2_MAX_ROWS_SELECT = O atributo da instrução SQL_ATTR_MAX_ROWS afeta as instruções SELECT quando o cursor é um cursor dinâmico. SQL_CA2_MAX_ROWS_INSERT = O atributo da instrução SQL_ATTR_MAX_ROWS afeta as instruções INSERT quando o cursor é um cursor dinâmico. SQL_CA2_MAX_ROWS_DELETE = O atributo da instrução SQL_ATTR_MAX_ROWS afeta as instruções DELETE quando o cursor é um cursor dinâmico. SQL_CA2_MAX_ROWS_UPDATE = O atributo da instrução SQL_ATTR_MAX_ROWS afeta as instruções UPDATE quando o cursor é um cursor dinâmico. SQL_CA2_MAX_ROWS_CATALOG = O atributo da instrução SQL_ATTR_MAX_ROWS afeta os conjuntos de resultados CATALOG quando o cursor é um cursor dinâmico. SQL_CA2_MAX_ROWS_AFFECTS_ALL = O atributo da instrução SQL_ATTR_MAX_ROWS afeta as instruções SELECT,INSERT,DELETE e UPDATE , bem como os conjuntos de resultados CATALOG , quando o cursor é um cursor dinâmico. SQL_CA2_CRC_EXACT = A contagem exata de linhas está disponível no campo de diagnóstico SQL_DIAG_CURSOR_ROW_COUNT quando o cursor é um cursor dinâmico. SQL_CA2_CRC_APPROXIMATE = Uma contagem aproximada de linhas está disponível no campo de diagnóstico SQL_DIAG_CURSOR_ROW_COUNT quando o cursor é um cursor dinâmico. SQL_CA2_SIMULATE_NON_UNIQUE = O driver não garante que instruções simuladas de atualização ou eliminação de posicionamento afetem apenas uma linha quando o cursor é um cursor dinâmico; É responsabilidade da aplicação garantir isso. (Se uma instrução afetar mais do que uma linha, SQLExecute ou SQLExecDirect devolve SQLSTATE 01001 [Conflito de operação de cursor].) Para definir este comportamento, a aplicação chama SQLSetStmtAttr com o atributo SQL_ATTR_SIMULATE_CURSOR definido para SQL_SC_NON_UNIQUE. SQL_CA2_SIMULATE_TRY_UNIQUE = O driver tenta garantir que as instruções de atualização ou eliminação posicionadas simuladas afetarão apenas uma linha quando o cursor for um cursor dinâmico. O controlador executa sempre tais declarações, mesmo que possam afetar mais do que uma linha, como quando não existe uma chave única. (Se uma instrução afetar mais do que uma linha, SQLExecute ou SQLExecDirect devolve SQLSTATE 01001 [Conflito de operação de cursor].) Para definir este comportamento, a aplicação chama SQLSetStmtAttr com o atributo SQL_ATTR_SIMULATE_CURSOR definido para SQL_SC_TRY_UNIQUE. SQL_CA2_SIMULATE_UNIQUE = O driver garante que as instruções de atualização ou eliminação posicionadas simuladas afetarão apenas uma linha quando o cursor for um cursor dinâmico. Se o driver não puder garantir isto para uma determinada instrução, SQLExecDirect ou SQLPrepare retornam SQLSTATE 01001 (conflito de operação do cursor). Para definir este comportamento, a aplicação chama SQLSetStmtAttr com o atributo SQL_ATTR_SIMULATE_CURSOR definido para SQL_SC_UNIQUE. |
| SQL_EXPRESSIONS_IN_ORDERBY | 1.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suportar expressões na lista ORDER BY ; "N" se não fizer. |
| SQL_FILE_USAGE | 2.0 | Um valor SQLUSMALLINT que indica como um driver de nível único trata diretamente ficheiros numa fonte de dados: SQL_FILE_NOT_SUPPORTED = O driver não é um driver de nível único. Por exemplo, um condutor ORACLE é um condutor de dois níveis. SQL_FILE_TABLE = Um driver de nível único trata ficheiros numa fonte de dados como tabelas. Por exemplo, um driver Xbase trata cada ficheiro Xbase como uma tabela. SQL_FILE_CATALOG = Um driver de nível único trata os ficheiros numa fonte de dados como um catálogo. Por exemplo, um driver do Microsoft Access trata cada ficheiro Microsoft Access como uma base de dados completa. Uma aplicação pode usar isto para determinar como os utilizadores vão selecionar os dados. Por exemplo, os utilizadores do Xbase costumam pensar nos dados como armazenados em ficheiros, enquanto os utilizadores do ORACLE e Microsoft Access geralmente pensam nos dados como armazenados em tabelas. Quando um utilizador seleciona uma fonte de dados Xbase, a aplicação pode mostrar a caixa de diálogo comum Windows Abrir Ficheiro; quando o utilizador seleciona uma fonte de dados Microsoft Access ou ORACLE, a aplicação pode mostrar uma caixa de diálogo personalizada Select Table. |
| SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor apenas para frente suportados pelo driver. Esta máscara de bits contém o primeiro subconjunto de atributos; para o segundo subconjunto, veja SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA1_NEXT SQL_CA1_LOCK_EXCLUSIVE SQL_CA1_LOCK_NO_CHANGE SQL_CA1_LOCK_UNLOCK SQL_CA1_POS_POSITION SQL_CA1_POS_UPDATE SQL_CA1_POS_DELETE SQL_CA1_POS_REFRESH SQL_CA1_POSITIONED_UPDATE SQL_CA1_POSITIONED_DELETE SQL_CA1_SELECT_FOR_UPDATE SQL_CA1_BULK_ADD SQL_CA1_BULK_UPDATE_BY_BOOKMARK SQL_CA1_BULK_DELETE_BY_BOOKMARK SQL_CA1_BULK_FETCH_BY_BOOKMARK Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (e substitua "cursor apenas para frente" por "cursor dinâmico" nas descrições). |
| SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor apenas para frente suportados pelo driver. Esta máscara de bits contém o segundo subconjunto de atributos; Para o primeiro subconjunto, veja SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA2_READ_ONLY_CONCURRENCY SQL_CA2_LOCK_CONCURRENCY SQL_CA2_OPT_ROWVER_CONCURRENCY SQL_CA2_OPT_VALUES_CONCURRENCY SQL_CA2_SENSITIVITY_ADDITIONS SQL_CA2_SENSITIVITY_DELETIONS SQL_CA2_SENSITIVITY_UPDATES SQL_CA2_MAX_ROWS_SELECT SQL_CA2_MAX_ROWS_INSERT SQL_CA2_MAX_ROWS_DELETE SQL_CA2_MAX_ROWS_UPDATE SQL_CA2_MAX_ROWS_CATALOG SQL_CA2_MAX_ROWS_AFFECTS_ALL SQL_CA2_CRC_EXACT SQL_CA2_CRC_APPROXIMATE SQL_CA2_SIMULATE_NON_UNIQUE SQL_CA2_SIMULATE_TRY_UNIQUE SQL_CA2_SIMULATE_UNIQUE Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES2 (e substitua "cursor apenas para frente" por "cursor dinâmico" nas descrições). |
| SQL_GETDATA_EXTENSIONS | 2.0 | Uma máscara de bits SQLUINTEGER que enumera extensões para SQLGetData. As seguintes máscaras de bits são usadas juntamente com a flag para determinar que extensões comuns o driver suporta para SQLGetData: SQL_GD_ANY_COLUMN = SQLGetData pode ser chamado para qualquer coluna não vinculada, incluindo aquelas anteriores à última coluna limitada. Note-se que as colunas devem ser chamadas por ordem crescente do número da coluna, a menos que SQL_GD_ANY_ORDER também seja devolvido. SQL_GD_ANY_ORDER = SQLGetData pode ser chamado para colunas não ligadas em qualquer ordem. Note que SQLGetData só pode ser chamado para colunas após a última coluna vinculada, a menos que SQL_GD_ANY_COLUMN também seja devolvido. SQL_GD_BLOCK = SQLGetData pode ser chamado para uma coluna não vinculada em qualquer linha de um bloco (onde o tamanho do conjunto de linhas é maior que 1) de dados após posicionamento nessa linha com SQLSetPos. SQL_GD_BOUND = SQLGetData pode ser chamado para colunas limitadas além das colunas não vinculadas. Um condutor não pode devolver este valor a menos que também devolve SQL_GD_ANY_COLUMN. SQL_GD_OUTPUT_PARAMS = SQLGetData pode ser chamado para devolver valores de parâmetros de saída. Para mais informações, consulte Recuperar Parâmetros de Saída Usando SQLGetData. O SQLGetData é obrigado a devolver dados apenas de colunas não ligadas que ocorrem após a última coluna limitada, são chamadas por ordem crescente do número de colunas e não estão numa linha num bloco de linhas. Se um driver suportar favoritos (seja de comprimento fixo ou de comprimento variável), deve suportar chamar SQLGetData na coluna 0. Este suporte é necessário independentemente do que o driver devolve para uma chamada ao SQLGetInfo com o SQL_GETDATA_EXTENSIONS InfoType. |
| SQL_GROUP_BY | 2.0 | Um valor SQLUSMALLINT que especifica a relação entre as colunas na cláusula GROUP BY e as colunas não agregadas na lista de seleção: SQL_GB_COLLATE = Uma cláusula COLLATE pode ser especificada no final de cada coluna de agrupamento. (ODBC 3.0) SQL_GB_NOT_SUPPORTED = cláusulas GROUP BY não são suportadas. (ODBC 2.0) SQL_GB_GROUP_BY_EQUALS_SELECT = A cláusula GROUP BY deve conter todas as colunas não agregadas na lista de seleção. Não pode conter outras colunas. Por exemplo, SELECIONE DEPARTAMENTO, MAX(SALÁRIO) DO GRUPO DE FUNCIONÁRIOS POR DEPARTAMENTO. (ODBC 2.0) SQL_GB_GROUP_BY_CONTAINS_SELECT = A cláusula GROUP BY deve conter todas as colunas não agregadas na lista de seleção. Pode conter colunas que não estão na lista de seleção. Por exemplo, SELECIONE DEPARTAMENTO, MAX(SALÁRIO) DO GRUPO DE FUNCIONÁRIOS POR DEPARTAMENTO, IDADE. (ODBC 2.0) SQL_GB_NO_RELATION = As colunas na cláusula GROUP BY e na lista select não estão relacionadas. O significado de colunas não agrupadas e não agregadas na lista de seleção depende da fonte dos dados. Por exemplo, SELECIONE O DEPARTAMENTO, SALÁRIO DO GRUPO DE FUNCIONÁRIOS POR DEPARTAMENTO, IDADE. (ODBC 2.0) Um driver compatível com SQL-92 Entry Level devolverá sempre a opção SQL_GB_GROUP_BY_EQUALS_SELECT conforme suportado. Um driver SQL-92 Full level-conformant devolverá sempre a opção de SQL_GB_COLLATE conforme suportado. Se nenhuma das opções for suportada, a cláusula GROUP BY não é suportada pela fonte de dados. |
| SQL_IDENTIFIER_CASE | 1.0 | Um valor de SQLUSMALLINT é o seguinte: SQL_IC_UPPER = Os identificadores em SQL não são sensíveis a maiúsculas minúsculas e são armazenados em maiúsculas no catálogo do sistema. SQL_IC_LOWER = Os identificadores em SQL não são sensíveis a maiúsculas minúsculas e são armazenados em minúsculas no catálogo do sistema. SQL_IC_SENSITIVE = Os identificadores em SQL são distinguíveis de maiúsculas minúsculas e armazenados em maiúsculas minúsculas no catálogo do sistema. SQL_IC_MIXED = Os identificadores em SQL não são sensíveis a maiúsculas minúsculas e são armazenados em maiúsculas e minúsculas no catálogo do sistema. Como os identificadores em SQL-92 nunca são distinguíveis de maiúsculas e minúsculas, um driver que cumpre estritamente SQL-92 (qualquer nível) nunca devolverá a opção SQL_IC_SENSITIVE como suportada. |
| SQL_IDENTIFIER_QUOTE_CHAR | 1.0 | A cadeia de caracteres usada como delimitador inicial e final de um identificador entre aspas (delimitado) nas instruções SQL. (Identificadores passados como argumentos para funções ODBC não precisam de ser citados.) Se a fonte de dados não suportar identificadores citados, é devolvido um espaço em branco. Esta cadeia de caracteres também pode ser usada para citar argumentos de funções de catálogo quando o atributo de ligação SQL_ATTR_METADATA_ID está definido como SQL_TRUE. Como o carácter de aspas do identificador em SQL-92 é a dupla aspas ("), um driver que cumpre estritamente o SQL-92 devolverá sempre o carácter de aspas duplas. |
| SQL_INDEX_KEYWORDS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera palavras-chave na instrução CREATE INDEX suportadas pelo driver: SQL_IK_NONE = Nenhuma das palavras-chave é suportada. SQL_IK_ASC = A palavra-chave ASC é suportada. SQL_IK_DESC = A palavra-chave DESC é suportada. SQL_IK_ALL = Todas as palavras-chave são suportadas. Para verificar se a instrução CREATE INDEX é suportada, uma aplicação chama SQLGetInfo com o tipo de informação SQL_DLL_INDEX. |
| SQL_INFO_SCHEMA_VIEWS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as vistas no INFORMATION_SCHEMA suportadas pelo driver. As vistas e o conteúdo do INFORMATION_SCHEMA estão conforme definidas no SQL-92. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as vistas suportadas: SQL_ISV_ASSERTIONS = Identifica as asserções do catálogo que pertencem a um dado utilizador. (Nível completo) SQL_ISV_CHARACTER_SETS = Identifica os conjuntos de caracteres do catálogo que podem ser acedidos por um dado utilizador. (Nível Intermédio) SQL_ISV_CHECK_CONSTRAINTS = Identifica as restrições CHECK que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_COLLATIONS = Identifica as colações de caracteres para o catálogo que podem ser acedidas por um dado utilizador. (Nível completo) SQL_ISV_COLUMN_DOMAIN_USAGE = Identifica colunas para o catálogo que dependem dos domínios definidos no catálogo e que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_COLUMN_PRIVILEGES = Identifica os privilégios nas colunas das tabelas persistentes que estão disponíveis ou são concedidos por um dado utilizador. (Nível de transição FIPS) SQL_ISV_COLUMNS = Identifica as colunas das tabelas persistentes que podem ser acedidas por um dado utilizador. (Nível de transição FIPS) SQL_ISV_CONSTRAINT_COLUMN_USAGE = Semelhante à CONSTRAINT_TABLE_USAGE vista, as colunas são identificadas para as várias restrições que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_CONSTRAINT_TABLE_USAGE = Identifica as tabelas usadas por restrições (referencial, única e asserções) e que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_DOMAIN_CONSTRAINTS = Identifica as restrições de domínio (dos domínios no catálogo) que podem ser acedidas por um dado utilizador. (Nível Intermédio) SQL_ISV_DOMAINS = Identifica os domínios definidos num catálogo que podem ser acedidos pelo utilizador. (Nível Intermédio) SQL_ISV_KEY_COLUMN_USAGE = Identifica colunas definidas no catálogo que são restringidas como chaves por um dado utilizador. (Nível Intermédio) SQL_ISV_REFERENTIAL_CONSTRAINTS = Identifica as restrições referenciais que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_SCHEMATA = Identifica os esquemas que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_SQL_LANGUAGES = Identifica os níveis de conformidade SQL, opções e dialetos suportados pela implementação SQL. (Nível Intermédio) SQL_ISV_TABLE_CONSTRAINTS = Identifica as restrições da tabela que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_TABLE_PRIVILEGES = Identifica os privilégios em tabelas persistentes que estão disponíveis ou são concedidos por um dado utilizador. (Nível de transição FIPS) SQL_ISV_TABLES = Identifica as tabelas persistentes definidas num catálogo que podem ser acedidas por um dado utilizador. (Nível de transição FIPS) SQL_ISV_TRANSLATIONS = Identifica traduções de caracteres para o catálogo que podem ser acedidas por um dado utilizador. (Nível completo) SQL_ISV_USAGE_PRIVILEGES = Identifica os privilégios de UTILIZAÇÃO em objetos de catálogo que estão disponíveis ou pertencem a um dado utilizador. (Nível de transição FIPS) SQL_ISV_VIEW_COLUMN_USAGE = Identifica as colunas das quais dependem as visualizações do catálogo que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_VIEW_TABLE_USAGE = Identifica as tabelas das quais dependem as visualizações do catálogo que pertencem a um dado utilizador. (Nível Intermédio) SQL_ISV_VIEWS = Identifica as tabelas visualizadas definidas neste catálogo que podem ser acedidas por um dado utilizador. (Nível de transição FIPS) |
| SQL_INSERT_STATEMENT | 3.0 | Uma máscara de bits SQLUINTEGER que indica suporte para instruções INSERT : SQL_IS_INSERT_LITERALS SQL_IS_INSERT_SEARCHED SQL_IS_SELECT_INTO Um driver SQL-92 compatível com o nível de entrada devolverá sempre todas estas opções conforme suportado. |
| SQL_INTEGRITY | 1.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suportar a Instalação de Melhoria de Integridade; "N" se não fizer. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_ODBC_SQL_OPT_IEF. |
| SQL_KEYSET_CURSOR_ATTRIBUTES1 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor de keyset suportados pelo driver. Esta máscara de bits contém o primeiro subconjunto de atributos; para o segundo subconjunto, veja SQL_KEYSET_CURSOR_ATTRIBUTES2. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA1_NEXT SQL_CA1_ABSOLUTE SQL_CA1_RELATIVE SQL_CA1_BOOKMARK SQL_CA1_LOCK_EXCLUSIVE SQL_CA1_LOCK_NO_CHANGE SQL_CA1_LOCK_UNLOCK SQL_CA1_POS_POSITION SQL_CA1_POS_UPDATE SQL_CA1_POS_DELETE SQL_CA1_POS_REFRESH SQL_CA1_POSITIONED_UPDATE SQL_CA1_POSITIONED_DELETE SQL_CA1_SELECT_FOR_UPDATE SQL_CA1_BULK_ADD SQL_CA1_BULK_UPDATE_BY_BOOKMARK SQL_CA1_BULK_DELETE_BY_BOOKMARK SQL_CA1_BULK_FETCH_BY_BOOKMARK Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (e substitua "cursor orientado por keyset" por "cursor dinâmico" nas descrições). Um driver SQL-92 Intermediário compatível com níveis normalmente devolve as opções SQL_CA1_NEXT, SQL_CA1_ABSOLUTE e SQL_CA1_RELATIVE conforme suportado, porque suporta cursores roláveis através da instrução SQL FETCH embutida. No entanto, como isto não determina diretamente o suporte SQL subjacente, cursores scrolláveis podem não ser suportados, mesmo para um driver SQL-92 Intermediário compatível com o nível. |
| SQL_KEYSET_CURSOR_ATTRIBUTES2 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor de keyset suportados pelo driver. Esta máscara de bits contém o segundo subconjunto de atributos; Para o primeiro subconjunto, veja SQL_KEYSET_CURSOR_ATTRIBUTES1. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA2_READ_ONLY_CONCURRENCY SQL_CA2_LOCK_CONCURRENCY SQL_CA2_OPT_ROWVER_CONCURRENCY SQL_CA2_OPT_VALUES_CONCURRENCY SQL_CA2_SENSITIVITY_ADDITIONS SQL_CA2_SENSITIVITY_DELETIONS SQL_CA2_SENSITIVITY_UPDATES SQL_CA2_MAX_ROWS_SELECT SQL_CA2_MAX_ROWS_INSERT SQL_CA2_MAX_ROWS_DELETE SQL_CA2_MAX_ROWS_UPDATE SQL_CA2_MAX_ROWS_CATALOG SQL_CA2_MAX_ROWS_AFFECTS_ALL SQL_CA2_CRC_EXACT SQL_CA2_CRC_APPROXIMATE SQL_CA2_SIMULATE_NON_UNIQUE SQL_CA2_SIMULATE_TRY_UNIQUE SQL_CA2_SIMULATE_UNIQUE Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (e substitua "cursor orientado por keyset" por "cursor dinâmico" nas descrições). |
| SQL_KEYWORDS | 2.0 | Uma cadeia de caracteres que contém uma lista separada por vírgulas de todas as palavras-chave específicas da fonte de dados. Esta lista não contém palavras-chave específicas do ODBC nem palavras-chave usadas tanto pela fonte de dados como pelo ODBC. Esta lista representa todas as palavras-chave reservadas; Aplicações interoperáveis não devem usar estas palavras nos nomes dos objetos. Para uma lista de palavras-chave ODBC, veja Palavras-chave Reservadas no Apêndice C: Gramática SQL. O valor #define SQL_ODBC_KEYWORDS contém uma lista separada por vírgulas de palavras-chave ODBC. |
| SQL_LIKE_ESCAPE_CLAUSE | 2.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suportar um carácter de escape para o carácter percentual (%) e o carácter de sublinhado (_) num predicado LIKE e o driver suportar a sintaxe ODBC para definir um carácter de escape de predicado LIKE ; "N" caso contrário. |
| SQL_MAX_ASYNC_CONCURRENT_STATEMENTS | 3.0 | Um valor SQLUINTEGER que especifica o número máximo de instruções ativas concorrentes em modo assíncrono que o driver pode suportar numa dada ligação. Se não houver um limite específico ou o limite for desconhecido, esse valor é zero. |
| SQL_MAX_BINARY_LITERAL_LEN | 2.0 | Um valor SQLUINTEGER que especifica o comprimento máximo (número de caracteres hexadecimais, excluindo o prefixo e sufixo literal devolvidos por SQLGetTypeInfo) de um literal binário numa instrução SQL. Por exemplo, o literal binário 0xFFAA tem um comprimento de 4. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. |
| SQL_MAX_CATALOG_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de catálogo na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. Um driver com nível FIPS totalmente conforme devolverá pelo menos 128. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_MAX_QUALIFIER_NAME_LEN. |
| SQL_MAX_CHAR_LITERAL_LEN | 2.0 | Um valor SQLUINTEGER que especifica o comprimento máximo (número de caracteres, excluindo o prefixo e sufixo literal devolvidos por SQLGetTypeInfo) de um literal de carácter numa instrução SQL. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. |
| SQL_MAX_COLUMN_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de coluna na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 18. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 128. |
| SQL_MAX_COLUMNS_IN_GROUP_BY | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de colunas permitido numa cláusula GROUP BY . Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 6. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 15. |
| SQL_MAX_COLUMNS_IN_INDEX | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de colunas permitidas num índice. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. |
| SQL_MAX_COLUMNS_IN_ORDER_BY | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de colunas permitido numa cláusula ORDER BY . Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 6. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 15. |
| SQL_MAX_COLUMNS_IN_SELECT | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de colunas permitidas numa lista de seleção. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 100. Um driver compatível com o nível FIPS Intermediate devolverá pelo menos 250. |
| SQL_MAX_COLUMNS_IN_TABLE | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de colunas permitidas numa tabela. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 100. Um driver compatível com o nível FIPS Intermediate devolverá pelo menos 250. |
| SQL_MAX_CONCURRENT_ACTIVITIES | 1.0 | Um valor SQLUSMALLINT que especifica o número máximo de instruções ativas que o driver pode suportar para uma ligação. Uma instrução é definida como ativa se tiver resultados pendentes, sendo que o termo "resultados" significa linhas de uma operação SELECT ou linhas afetadas por uma operação INSERT,UPDATE ou DELETE (como uma contagem de linhas), ou se estiver num estado NEED_DATA. Este valor pode refletir uma limitação imposta tanto pelo condutor como pela fonte de dados. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_ACTIVE_STATEMENTS. |
| SQL_MAX_CURSOR_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de cursor na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 18. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 128. |
| SQL_MAX_DRIVER_CONNECTIONS | 1.0 | Um valor SQLUSMALLINT que especifica o número máximo de ligações ativas que o driver pode suportar para um ambiente. Este valor pode refletir uma limitação imposta tanto pelo condutor como pela fonte de dados. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_ACTIVE_CONNECTIONS. |
| SQL_MAX_IDENTIFIER_LEN | 3.0 | Um SQLUSMALLINT que indica o tamanho máximo em caracteres que a fonte de dados suporta para nomes definidos pelo utilizador. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 18. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 128. |
| SQL_MAX_INDEX_SIZE | 2.0 | Um valor SQLUINTEGER que especifica o número máximo de bytes permitidos nos campos combinados de um índice. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. |
| SQL_MAX_PROCEDURE_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de procedimento na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. |
| SQL_MAX_ROW_SIZE | 2.0 | Um valor SQLUINTEGER que especifica o comprimento máximo de uma única linha numa tabela. Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 2.000. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 8.000. |
| SQL_MAX_ROW_SIZE_INCLUDES_LONG | 3.0 | Uma cadeia de caracteres: "Y" se o tamanho máximo da linha devolvido para o tipo de informação SQL_MAX_ROW_SIZE incluir o comprimento de todas as colunas SQL_LONGVARCHAR e SQL_LONGVARBINARY na linha; "N" caso contrário. |
| SQL_MAX_SCHEMA_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de esquema na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 18. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 128. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_MAX_OWNER_NAME_LEN. |
| SQL_MAX_STATEMENT_LEN | 2.0 | Um valor SQLUINTEGER que especifica o comprimento máximo (número de caracteres, incluindo espaço em branco) de uma instrução SQL. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. |
| SQL_MAX_TABLE_NAME_LEN | 1.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de tabela na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. Um condutor compatível com o nível de entrada FIPS devolverá pelo menos 18. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 128. |
| SQL_MAX_TABLES_IN_SELECT | 2.0 | Um valor SQLUSMALLINT que especifica o número máximo de tabelas permitidas na cláusula FROM de uma instrução SELECT . Se não houver um limite especificado ou se o limite for desconhecido, este valor é definido para zero. Um condutor com o nível de entrada FIPS devolverá pelo menos 15. Um condutor compatível com o nível FIPS Intermédio devolverá pelo menos 50. |
| SQL_MAX_USER_NAME_LEN | 2.0 | Um valor SQLUSMALLINT que especifica o comprimento máximo de um nome de utilizador na fonte de dados. Se não houver comprimento máximo ou se o comprimento for desconhecido, este valor é definido para zero. |
| SQL_MULT_RESULT_SETS | 1.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suportar múltiplos conjuntos de resultados, "N" se não suportar. Para mais informações sobre múltiplos conjuntos de resultados, consulte Múltiplos Resultados. |
| SQL_MULTIPLE_ACTIVE_TXN | 1.0 | Uma cadeia de caracteres: "Y" se o driver suportar mais do que uma transação ativa ao mesmo tempo, "N" se apenas uma transação puder estar ativa em qualquer momento. A informação devolvida para este tipo de informação não se aplica no caso de transações distribuídas. |
| SQL_NEED_LONG_DATA_LEN | 2.0 | Uma cadeia de caracteres: "Y" se a fonte de dados precisar do comprimento de um valor longo (o tipo de dado é SQL_LONGVARCHAR, SQL_LONGVARBINARY ou um tipo longo específico da fonte de dados) antes desse valor ser enviado para a fonte de dados, "N" se não precisar. Para mais informações, veja Função SQLBindParameter e Função SQLSetPos. |
| SQL_NON_NULLABLE_COLUMNS | 1.0 | Um valor SQLUSMALLINT que especifica se a fonte de dados suporta NOT NULL nas colunas: SQL_NNC_NULL = Todas as colunas devem ser anuláveis. SQL_NNC_NON_NULL = Colunas não podem ser anuladas. (A fonte de dados suporta a restrição da coluna NOT NULL nas instruções CREATE TABLE .) Um driver compatível com o nível de entrada SQL-92 devolverá SQL_NNC_NON_NULL. |
| SQL_NULL_COLLATION | 2.0 | Um valor SQLUSMALLINT que especifica onde os NULLs são ordenados num conjunto de resultados: SQL_NC_END = NULLs são ordenados no final do conjunto de resultados, independentemente das palavras-chave ASC ou DESC. SQL_NC_HIGH = NULLs são ordenados no extremo superior do conjunto de resultados, dependendo das palavras-chave ASC ou DESC. SQL_NC_LOW = NULLs são ordenados no extremo inferior do conjunto de resultados, dependendo das palavras-chave ASC ou DESC. SQL_NC_START = NULLs são ordenados no início do conjunto de resultados, independentemente das palavras-chave ASC ou DESC. |
| SQL_NUMERIC_FUNCTIONS | 1.0 | Nota: 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. Uma máscara de bits SQLUINTEGER que enumera as funções numéricas escalares suportadas pelo driver e pela fonte de dados associada. As seguintes máscaras de bits são usadas para determinar quais as funções numéricas suportadas: SQL_FN_NUM_ABS (ODBC 1.0) SQL_FN_NUM_ACOS (ODBC 1.0) SQL_FN_NUM_ASIN (ODBC 1.0) SQL_FN_NUM_ATAN (ODBC 1.0) SQL_FN_NUM_ATAN2 (ODBC 1.0) SQL_FN_NUM_CEILING (ODBC 1.0) SQL_FN_NUM_COS (ODBC 1.0) SQL_FN_NUM_COT (ODBC 1.0) SQL_FN_NUM_DEGREES (ODBC 2.0) SQL_FN_NUM_EXP (ODBC 1.0) SQL_FN_NUM_FLOOR (ODBC 1.0) SQL_FN_NUM_LOG (ODBC 1.0) SQL_FN_NUM_LOG10 (ODBC 2.0) SQL_FN_NUM_MOD (ODBC 1.0) SQL_FN_NUM_PI (ODBC 1.0) SQL_FN_NUM_POWER (ODBC 2.0) SQL_FN_NUM_RADIANS (ODBC 2.0) SQL_FN_NUM_RAND (ODBC 1.0) SQL_FN_NUM_ROUND (ODBC 2.0) SQL_FN_NUM_SIGN (ODBC 1.0) SQL_FN_NUM_SIN (ODBC 1.0) SQL_FN_NUM_SQRT (ODBC 1.0) SQL_FN_NUM_TAN (ODBC 1.0) SQL_FN_NUM_TRUNCATE (ODBC 2.0) |
| SQL_ODBC_INTERFACE_CONFORMANCE | 3.0 | Um valor SQLUINTEGER que indica o nível da interface ODBC 3*.x* com que o driver cumpre. SQL_OIC_CORE: O nível mínimo que todos os condutores ODBC devem cumprir. Este nível inclui elementos básicos de interface, como funções de ligação, funções para preparar e executar uma instrução SQL, funções básicas de metadados de conjunto de resultados, funções básicas de catálogo, e assim por diante. SQL_OIC_LEVEL1: Um nível que inclui a funcionalidade do nível de conformidade com os padrões básicos, além de cursores roláveis, favoritos, atualizações e eliminações posicionadas, e assim por diante. SQL_OIC_LEVEL2: Nível A que inclui funcionalidades de nível de conformidade com padrões de nível 1, além de funcionalidades avançadas como cursores sensíveis; atualizar, eliminar e atualizar através de favoritos; suporte a procedimentos armazenados; funções de catálogo para chaves primárias e estrangeiras; suporte multi-catálogo; e assim sucessivamente. Para mais informações, consulte Níveis de Conformidade da Interface. |
| SQL_ODBC_VER | 1.0 | Uma cadeia de caracteres com a versão do ODBC à qual o Gestor de Drivers se conforma. A versão é da forma ##.##.0000, onde os dois primeiros dígitos são a versão maior e os dois dígitos seguintes a versão menor. Isto é implementado apenas no Driver Manager. |
| SQL_OJ_CAPABILITIES | 2.01 | Uma máscara de bits SQLUINTEGER que enumera os tipos de joins externos suportados pelo driver e pela fonte de dados. As seguintes máscaras de bits são usadas para determinar que tipos são suportados: SQL_OJ_LEFT = São suportadas uniões exteriores à esquerda. SQL_OJ_RIGHT = São suportadas uniões exteriores à direita. SQL_OJ_FULL = São suportadas uniões exteriores completas. SQL_OJ_NESTED = As junções externas aninhadas são suportadas. SQL_OJ_NOT_ORDERED = Os nomes das colunas na cláusula ON da junção exterior não têm de estar na mesma ordem que os respetivos nomes das tabelas na cláusula JOIN EXTERIOR . SQL_OJ_INNER = A mesa interior (a mesa direita numa junção exterior à esquerda ou a mesa à esquerda numa junção exterior à direita) também pode ser usada numa junção interna. Isto não se aplica a uniões exteriores completas, que não têm uma mesa interior. SQL_OJ_ALL_COMPARISON_OPS = O operador de comparação na cláusula ON pode ser qualquer um dos operadores de comparação ODBC. Se este bit não estiver definido, apenas o operador de comparação igual (=) pode ser usado nas junções externas. Se nenhuma destas opções for devolvida como suportada, nenhuma cláusula de junção externa é suportada. Para informações sobre o suporte de operadores relacionais de junção numa instrução SELECT, conforme definido pelo SQL-92, veja SQL_SQL92_RELATIONAL_JOIN_OPERATORS. |
| SQL_ORDER_BY_COLUMNS_IN_SELECT | 2.0 | Uma cadeia de caracteres: "Y" se as colunas na cláusula ORDER BY tiverem de estar na lista de seleção; caso contrário, "N". |
| SQL_PARAM_ARRAY_ROW_COUNTS | 3.0 | Um inteiro SQLUINTEGER que enumera as propriedades do controlador relativamente à disponibilidade de contagens de linhas numa execução parametrizada. Tem os seguintes valores: SQL_PARC_BATCH = Contagens individuais de linhas estão disponíveis para cada conjunto de parâmetros. Isto é conceptualmente equivalente ao driver gerar um lote de instruções SQL, uma para cada conjunto de parâmetros no array. A informação de erro alargada pode ser recuperada usando o campo de descrição SQL_PARAM_STATUS_PTR. SQL_PARC_NO_BATCH = Existe apenas uma contagem de linhas disponível, que é a contagem cumulativa resultante da execução da instrução para todo o array de parâmetros. Isto é conceptualmente equivalente a tratar a afirmação juntamente com o array completo de parâmetros como uma unidade atómica. Os erros são tratados da mesma forma que se uma instrução fosse executada. |
| SQL_PARAM_ARRAY_SELECTS | 3.0 | Um SQLUINTEGER que enumera as propriedades do driver relativamente à disponibilidade de conjuntos de resultados numa execução parametrizada. Tem os seguintes valores: SQL_PAS_BATCH = Existe um conjunto de resultados disponível por conjunto de parâmetros. Isto é conceptualmente equivalente ao driver gerar um lote de instruções SQL, uma para cada conjunto de parâmetros no array. SQL_PAS_NO_BATCH = Existe apenas um conjunto de resultados disponível, que representa o conjunto cumulativo resultante da execução da instrução para o array completo de parâmetros. Isto é conceptualmente equivalente a tratar a afirmação juntamente com o array completo de parâmetros como uma unidade atómica. SQL_PAS_NO_SELECT = Um driver não permite que uma instrução geradora de conjuntos de resultados seja executada com um array de parâmetros. |
| SQL_POS_OPERATIONS | 2.0 | Uma máscara de bits SQLINTEGER que enumera as operações de suporte no SQLSetPos. As seguintes máscaras de bits são usadas juntamente com a flag para determinar quais as opções suportadas. 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_PROCEDURE_TERM | 1.0 | Uma cadeia de caracteres com o nome do fornecedor da fonte de dados para um procedimento; por exemplo, "procedimento de base de dados", "procedimento armazenado", "procedimento", "pacote" ou "consulta armazenada". |
| SQL_PROCEDURES | 1.0 | Uma cadeia de caracteres: "Y" se a fonte de dados suporta procedimentos e o driver suporta a sintaxe de invocação de procedimentos ODBC; "N" caso contrário. |
| SQL_QUOTED_IDENTIFIER_CASE | 2.0 | Um valor de SQLUSMALLINT é o seguinte: SQL_IC_UPPER = Os identificadores citados em SQL não são sensíveis a maiúsculas e minúsculas e são armazenados em maiúsculas no catálogo do sistema. SQL_IC_LOWER = Identificadores citados em SQL não são sensíveis a maiúsculas minúsculas e são armazenados em minúsculas minúsculas no catálogo do sistema. SQL_IC_SENSITIVE = Os identificadores citados em SQL são majúsculas e minúsculas e armazenados em maiúsculas mistas no catálogo do sistema. (Numa base de dados compatível com SQL-92, os identificadores entre aspas são sempre distinguíveis de maiúsculas e minúsculas.) SQL_IC_MIXED = Os identificadores citados em SQL não são sensíveis a maiúsculas minúsculas e são armazenados em maiúsculas mistas no catálogo do sistema. Um driver SQL-92 compatível com nível de entrada irá sempre devolver SQL_IC_SENSITIVE. |
| SQL_ROW_UPDATES | 1.0 | Uma cadeia de caracteres: "Y" se um cursor orientado por conjunto de chaves ou misto mantém versões ou valores de linha para todas as linhas obtidas e, portanto, pode detetar quaisquer atualizações feitas a uma linha por qualquer utilizador desde a última vez que a linha foi buscada. (Isto aplica-se apenas a atualizações, não a eliminações ou inserções.) O driver pode devolver a SQL_ROW_UPDATED flag ao array de estado da linha quando o SQLFetchScroll é chamado. Caso contrário, "N". |
| SQL_SCHEMA_TERM | 1.0 | Uma cadeia de caracteres com o nome do fornecedor da fonte de dados para um esquema; por exemplo, "proprietário", "ID de autorização" ou "Esquema". A cadeia de caracteres pode ser devolvida em maiúsculas, menores ou mistas. Um driver SQL-92 compatível com nível de entrada devolverá sempre "schema". Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_OWNER_TERM. |
| SQL_SCHEMA_USAGE | 2.0 | Uma máscara de bits SQLUINTEGER que enumera as instruções em que os esquemas podem ser usados: SQL_SU_DML_STATEMENTS = Os esquemas são suportados em todas as instruções da Linguagem de Manipulação de Dados: SELECT, INSERT, UPDATE, DELETE e, se suportado, SELECT FOR UPDATE e as instruções positioned update and delete. SQL_SU_PROCEDURE_INVOCATION = Os esquemas são suportados na instrução de invocação do procedimento ODBC. SQL_SU_TABLE_DEFINITION = Os esquemas são suportados em todas as instruções de definição de tabelas: CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP TABLE e DROP VIEW. SQL_SU_INDEX_DEFINITION = Os esquemas são suportados em todas as definições de índice: CREATE INDEX e DROP INDEX. SQL_SU_PRIVILEGE_DEFINITION = Os esquemas são suportados em todas as declarações de definição de privilégio: GRANT e REVOKE. Um driver compatível com SQL-92 Entry Level irá sempre devolver as opções de SQL_SU_DML_STATEMENTS, SQL_SU_TABLE_DEFINITION e SQL_SU_PRIVILEGE_DEFINITION, conforme suportado. Este InfoType foi renomeado para ODBC 3.0 a partir do ODBC 2.0 InfoType SQL_OWNER_USAGE. |
| SQL_SCROLL_OPTIONS | 1.0 | Nota: 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. Uma máscara de bits SQLUINTEGER que enumera as opções de scroll suportadas para cursores roláveis. As seguintes máscaras de bits são usadas para determinar quais as opções suportadas: SQL_SO_FORWARD_ONLY = O cursor apenas desliza para a frente. (ODBC 1.0) SQL_SO_STATIC = Os dados no conjunto de resultados são estáticos. (ODBC 2.0) SQL_SO_KEYSET_DRIVEN = O driver guarda e utiliza as chaves para cada linha do conjunto de resultados. (ODBC 1.0) SQL_SO_DYNAMIC = O driver mantém as chaves para cada linha do conjunto de linhas (o tamanho do conjunto de chaves é igual ao tamanho do conjunto de linhas). (ODBC 1.0) SQL_SO_MIXED = O driver mantém as chaves para cada linha do conjunto de chaves, e o tamanho do conjunto é maior do que o tamanho do conjunto de linhas. O cursor é controlado pelo conjunto de teclas dentro do conjunto de teclas e dinâmico fora dele. (ODBC 1.0) Para informações sobre cursores roláveis, veja Cursores Roláveis. |
| SQL_SEARCH_PATTERN_ESCAPE | 1.0 | Uma cadeia de caracteres que especifica o que o driver suporta como carácter de escape e que permite o uso dos metacaracteres de correspondência de padrão, sublinhado (_) e sinal percentual (%) como caracteres válidos nos padrões de pesquisa. Este carácter escape aplica-se apenas àqueles argumentos de função catálogo que suportam cadeias de pesquisa. Se esta cadeia estiver vazia, o driver não suporta um carácter de escape de padrão de pesquisa. Como este tipo de informação não indica suporte geral ao carácter escape no predicado LIKE , o SQL-92 não inclui requisitos para esta cadeia de caracteres. Este InfoType está limitado a funções de catálogo. Para uma descrição do uso do carácter escape em cadeias de padrões de pesquisa, veja Argumentos de Valor do Padrão. |
| SQL_SERVER_NAME | 1.0 | Uma cadeia de caracteres com o nome específico do servidor da fonte de dados; útil quando um nome de fonte de dados é usado durante SQLConnect, SQLDriverConnect e SQLBrowseConnect. |
| SQL_SPECIAL_CHARACTERS | 2.0 | Uma cadeia de caracteres que contém todos os caracteres especiais (isto é, todos os caracteres exceto a a z, A a Z, 0 a 9 e sublinhado) que podem ser usados num nome identificador, como nome de tabela, nome de coluna ou nome de índice, na fonte de dados. Por exemplo, "#$^". Se um identificador contiver um ou mais destes caracteres, o identificador deve ser um identificador delimitado. |
| SQL_SQL_CONFORMANCE | 3.0 | Um valor SQLUINTEGER que indica o nível de SQL-92 suportado pelo driver: SQL_SC_SQL92_ENTRY = Compatível com SQL-92 de nível inicial. SQL_SC_FIPS127_2_TRANSITIONAL = Conformidade com o nível de transição FIPS 127-2. SQL_SC_SQL92_FULL = Compatível com SQL-92 de nível completo. SQL_SC_ SQL92_INTERMEDIATE = Compatível com SQL-92 de nível intermédio. |
| SQL_SQL92_DATETIME_FUNCTIONS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as funções escalares de data-hora suportadas pelo driver e pela fonte de dados associada, conforme definido em SQL-92. As seguintes máscaras de bits são usadas para determinar quais as funções de data-hora suportadas: SQL_SDF_CURRENT_DATE SQL_SDF_CURRENT_TIME SQL_SDF_CURRENT_TIMESTAMP |
| SQL_SQL92_FOREIGN_KEY_DELETE_RULE | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as regras suportadas para uma chave estrangeira numa instrução DELETE , conforme definido em SQL-92. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas pela fonte de dados: SQL_SFKD_CASCADE SQL_SFKD_NO_ACTION SQL_SFKD_SET_DEFAULT SQL_SFKD_SET_NULL Um driver compatível com o nível de transição FIPS devolverá sempre todas estas opções conforme suportado. |
| SQL_SQL92_FOREIGN_KEY_UPDATE_RULE | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as regras suportadas para uma chave estrangeira numa instrução UPDATE , conforme definido no SQL-92. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas pela fonte de dados: SQL_SFKU_CASCADE SQL_SFKU_NO_ACTION SQL_SFKU_SET_DEFAULT SQL_SFKU_SET_NULL Um driver SQL-92 Full level-conformant devolverá sempre todas estas opções conforme suportado. |
| SQL_SQL92_GRANT | 3.0 | Uma máscara de bits SQLUINTEGER enumerando as cláusulas suportadas na instrução GRANT , conforme definido em SQL-92. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas pela fonte de dados: SQL_SG_DELETE_TABLE (Nível de entrada) SQL_SG_INSERT_COLUMN (Nível Intermédio) SQL_SG_INSERT_TABLE (Nível de entrada) SQL_SG_REFERENCES_TABLE (Nível de entrada) SQL_SG_REFERENCES_COLUMN (Nível de entrada) SQL_SG_SELECT_TABLE (Nível de entrada) SQL_SG_UPDATE_COLUMN (Nível de entrada) SQL_SG_UPDATE_TABLE (Nível de entrada) SQL_SG_USAGE_ON_DOMAIN (Nível de transição FIPS) SQL_SG_USAGE_ON_CHARACTER_SET (Nível de transição FIPS) SQL_SG_USAGE_ON_COLLATION (Nível de transição FIPS) SQL_SG_USAGE_ON_TRANSLATION (Nível de transição FIPS) SQL_SG_WITH_GRANT_OPTION (Nível de entrada) |
| SQL_SQL92_NUMERIC_VALUE_FUNCTIONS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as funções escalares de valor numérico suportadas pelo driver e pela fonte de dados associada, conforme definido no SQL-92. As seguintes máscaras de bits são usadas para determinar quais as funções numéricas suportadas: SQL_SNVF_BIT_LENGTH SQL_SNVF_CHAR_LENGTH SQL_SNVF_CHARACTER_LENGTH SQL_SNVF_EXTRACT SQL_SNVF_OCTET_LENGTH SQL_SNVF_POSITION |
| SQL_SQL92_PREDICATES | 3.0 | Uma máscara de bits SQLUINTEGER que enumera os predicados suportados numa instrução SELECT , conforme definido em SQL-92. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as opções suportadas pela fonte de dados: SQL_SP_BETWEEN (Nível de entrada) SQL_SP_COMPARISON (Nível de entrada) SQL_SP_EXISTS (Nível de entrada) SQL_SP_IN (Nível de entrada) SQL_SP_ISNOTNULL (Nível de entrada) SQL_SP_ISNULL (Nível de entrada) SQL_SP_LIKE (Nível de entrada) SQL_SP_MATCH_FULL (Nível completo) SQL_SP_MATCH_PARTIAL (Nível completo) SQL_SP_MATCH_UNIQUE_FULL (Nível completo) SQL_SP_MATCH_UNIQUE_PARTIAL (Nível completo) SQL_SP_OVERLAPS (Nível de transição FIPS) SQL_SP_QUANTIFIED_COMPARISON (Nível de entrada) SQL_SP_UNIQUE (Nível de entrada) |
| SQL_SQL92_RELATIONAL_JOIN_OPERATORS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera os operadores relacionais de junção suportados numa instrução SELECT , conforme definido em SQL-92. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as opções suportadas pela fonte de dados: SQL_SRJO_CORRESPONDING_CLAUSE (Nível Intermédio) SQL_SRJO_CROSS_JOIN (Nível completo) SQL_SRJO_EXCEPT_JOIN (Nível Intermédio) SQL_SRJO_FULL_OUTER_JOIN (Nível Intermédio) SQL_SRJO_INNER_JOIN (Nível de transição FIPS) SQL_SRJO_INTERSECT_JOIN (Nível Intermédio) SQL_SRJO_LEFT_OUTER_JOIN (Nível de transição FIPS) SQL_SRJO_NATURAL_JOIN (Nível Transitório FIPS) SQL_SRJO_RIGHT_OUTER_JOIN (Nível de transição FIPS) SQL_SRJO_UNION_JOIN (Nível completo) SQL_SRJO_INNER_JOIN indica suporte para a sintaxe INNER JOIN , não para a capacidade de inner join. O suporte para a sintaxe INNER JOIN é FIPS TRANSITIONAL, enquanto o suporte para a capacidade de inner join é ENTRY. |
| SQL_SQL92_REVOKE | 3.0 | Uma máscara de bits SQLUINTEGER enumerando as cláusulas suportadas na instrução REVOKE , conforme definida em SQL-92, suportada pela fonte de dados. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as cláusulas suportadas pela fonte de dados: SQL_SR_CASCADE (Nível de transição FIPS) SQL_SR_DELETE_TABLE (Nível de entrada) SQL_SR_GRANT_OPTION_FOR (Nível Intermédio) SQL_SR_INSERT_COLUMN (Nível Intermédio) SQL_SR_INSERT_TABLE (Nível de entrada) SQL_SR_REFERENCES_COLUMN (Nível de entrada) SQL_SR_REFERENCES_TABLE (Nível de entrada) SQL_SR_RESTRICT (Nível de transição FIPS) SQL_SR_SELECT_TABLE (Nível de entrada) SQL_SR_UPDATE_COLUMN (Nível de entrada) SQL_SR_UPDATE_TABLE (Nível de entrada) SQL_SR_USAGE_ON_DOMAIN (Nível de transição FIPS) SQL_SR_USAGE_ON_CHARACTER_SET (Nível de transição FIPS) SQL_SR_USAGE_ON_COLLATION (Nível de transição FIPS) SQL_SR_USAGE_ON_TRANSLATION (Nível de transição FIPS) |
| SQL_SQL92_ROW_VALUE_CONSTRUCTOR | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as expressões do construtor de valores de linha suportadas numa instrução SELECT , conforme definido em SQL-92. As seguintes máscaras de bits são usadas para determinar quais as opções suportadas pela fonte de dados: SQL_SRVC_VALUE_EXPRESSION SQL_SRVC_NULL SQL_SRVC_DEFAULT SQL_SRVC_ROW_SUBQUERY |
| SQL_SQL92_STRING_FUNCTIONS | 3.0 | Uma máscara de bits SQLUINTEGER que enumera as funções escalares da string suportadas pelo driver e pela fonte de dados associada, conforme definido no SQL-92. As seguintes máscaras de bits são usadas para determinar que funções de cadeia são suportadas: SQL_SSF_CONVERT SQL_SSF_LOWERSQL_SSF_UPPER SQL_SSF_SUBSTRING SQL_SSF_TRANSLATE SQL_SSF_TRIM_BOTH SQL_SSF_TRIM_LEADING SQL_SSF_TRIM_TRAILING |
| SQL_SQL92_VALUE_EXPRESSIONS | 3.0 | Uma máscara de bits SQLUINTEGER enumerando as expressões de valor suportadas, conforme definido em SQL-92. O nível de conformidade SQL-92 ou FIPS em que esta funcionalidade deve ser suportada é indicado entre parênteses ao lado de cada máscara de bits. As seguintes máscaras de bits são usadas para determinar quais as opções suportadas pela fonte de dados: SQL_SVE_CASE (Nível Intermédio) SQL_SVE_CAST (Nível de transição FIPS) SQL_SVE_COALESCE (Nível Intermédio) SQL_SVE_NULLIF (Nível Intermédio) |
| SQL_STANDARD_CLI_CONFORMANCE | 3.0 | Uma máscara de bits SQLUINTEGER que enumera o ou os padrões CLI aos quais o driver se conforma. As seguintes máscaras de bits são usadas para determinar a que níveis o driver cumpre: SQL_SCC_XOPEN_CLI_VERSION1: O driver cumpre a versão 1 da CLI do Open Group. SQL_SCC_ISO92_CLI: O driver cumpre a ISO 92 CLI. |
| SQL_STATIC_CURSOR_ATTRIBUTES1 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor estático suportados pelo driver. Esta máscara de bits contém o primeiro subconjunto de atributos; para o segundo subconjunto, ver SQL_STATIC_CURSOR_ATTRIBUTES2. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA1_NEXT SQL_CA1_ABSOLUTE SQL_CA1_RELATIVE SQL_CA1_BOOKMARK SQL_CA1_LOCK_NO_CHANGE SQL_CA1_LOCK_EXCLUSIVE SQL_CA1_LOCK_UNLOCK SQL_CA1_POS_POSITION SQL_CA1_POS_UPDATE SQL_CA1_POS_DELETE SQL_CA1_POS_REFRESH SQL_CA1_POSITIONED_UPDATE SQL_CA1_POSITIONED_DELETE SQL_CA1_SELECT_FOR_UPDATE SQL_CA1_BULK_ADD SQL_CA1_BULK_UPDATE_BY_BOOKMARK SQL_CA1_BULK_DELETE_BY_BOOKMARK SQL_CA1_BULK_FETCH_BY_BOOKMARK Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (e substitua "cursor estático" por "cursor dinâmico" nas descrições). Um driver SQL-92 Intermediário compatível com níveis normalmente devolve as opções SQL_CA1_NEXT, SQL_CA1_ABSOLUTE e SQL_CA1_RELATIVE conforme suportado, porque suporta cursores roláveis através da instrução SQL FETCH embutida. No entanto, como isto não determina diretamente o suporte SQL subjacente, cursores scrolláveis podem não ser suportados, mesmo para um driver SQL-92 Intermediário compatível com o nível. |
| SQL_STATIC_CURSOR_ATTRIBUTES2 | 3.0 | Uma máscara de bits SQLUINTEGER que descreve os atributos de um cursor estático suportados pelo driver. Esta máscara de bits contém o segundo subconjunto de atributos; Para o primeiro subconjunto, veja SQL_STATIC_CURSOR_ATTRIBUTES1. As seguintes máscaras de bits são usadas para determinar quais os atributos suportados: SQL_CA2_READ_ONLY_CONCURRENCY SQL_CA2_LOCK_CONCURRENCY SQL_CA2_OPT_ROWVER_CONCURRENCY SQL_CA2_OPT_VALUES_CONCURRENCY SQL_CA2_SENSITIVITY_ADDITIONS SQL_CA2_SENSITIVITY_DELETIONS SQL_CA2_SENSITIVITY_UPDATES SQL_CA2_MAX_ROWS_SELECT SQL_CA2_MAX_ROWS_INSERT SQL_CA2_MAX_ROWS_DELETE SQL_CA2_MAX_ROWS_UPDATE SQL_CA2_MAX_ROWS_CATALOG SQL_CA2_MAX_ROWS_AFFECTS_ALL SQL_CA2_CRC_EXACT SQL_CA2_CRC_APPROXIMATE SQL_CA2_SIMULATE_NON_UNIQUE SQL_CA2_SIMULATE_TRY_UNIQUE SQL_CA2_SIMULATE_UNIQUE Para descrições destas máscaras de bit, veja SQL_DYNAMIC_CURSOR_ATTRIBUTES2 (e substitua "cursor estático" por "cursor dinâmico" nas descrições). |
| SQL_STRING_FUNCTIONS | 1.0 | Nota: 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. Uma máscara de bits SQLUINTEGER que enumera as funções escalares da cadeia suportadas pelo driver e pela fonte de dados associada. As seguintes máscaras de bits são usadas para determinar que funções de cadeia são suportadas: SQL_FN_STR_ASCII (ODBC 1.0) SQL_FN_STR_BIT_LENGTH (ODBC 3.0) SQL_FN_STR_CHAR (ODBC 1.0) SQL_FN_STR_CHAR_LENGTH (ODBC 3.0) SQL_FN_STR_CHARACTER_LENGTH (ODBC 3.0) SQL_FN_STR_CONCAT (ODBC 1.0) SQL_FN_STR_DIFFERENCE (ODBC 2.0) SQL_FN_STR_INSERT (ODBC 1.0) SQL_FN_STR_LCASE (ODBC 1.0) SQL_FN_STR_LEFT (ODBC 1.0) SQL_FN_STR_LENGTH (ODBC 1.0) SQL_FN_STR_LOCATE (ODBC 1.0) SQL_FN_STR_LTRIM (ODBC 1.0) SQL_FN_STR_OCTET_LENGTH (ODBC 3.0) SQL_FN_STR_POSITION (ODBC 3.0) SQL_FN_STR_REPEAT (ODBC 1.0) SQL_FN_STR_REPLACE (ODBC 1.0) SQL_FN_STR_RIGHT (ODBC 1.0) SQL_FN_STR_RTRIM (ODBC 1.0) SQL_FN_STR_SOUNDEX (ODBC 2.0) SQL_FN_STR_SPACE (ODBC 2.0) SQL_FN_STR_SUBSTRING (ODBC 1.0) SQL_FN_STR_UCASE (ODBC 1.0) Se uma aplicação conseguir chamar a função escalar LOCATE com os argumentos string_exp1, string_exp2 e start , o driver devolve a máscara de bits SQL_FN_STR_LOCATE. Se uma aplicação conseguir chamar a função escalar LOCATE apenas com os argumentos string_exp1 e string_exp2 , o driver devolve a máscara de bits SQL_FN_STR_LOCATE_2. Os drivers que suportam totalmente a função escalar LOCATE retornam ambas as máscaras de bit. (Para mais informações, veja Funções de Cadeia no Apêndice E, "Funções Escalares.") |
| SQL_SUBQUERIES | 2.0 | Uma máscara de bits SQLUINTEGER que enumera os predicados que suportam subconsultas: SQL_SQ_CORRELATED_SUBQUERIES SQL_SQ_COMPARISON SQL_SQ_EXISTS SQL_SQ_INSQL_SQ_QUANTIFIED A máscara de bits SQL_SQ_CORRELATED_SUBQUERIES indica que todos os predicados que suportam subconsultas suportam subconsultas correlacionadas. Um driver compatível com SQL-92 de nível de entrada devolverá sempre uma máscara de bits onde todos estes bits estão definidos. |
| SQL_SYSTEM_FUNCTIONS | 1.0 | Uma máscara de bits SQLUINTEGER que enumera as funções escalares do sistema suportadas pelo driver e pela fonte de dados associada. As seguintes máscaras de bits são usadas para determinar quais as funções do sistema suportadas: SQL_FN_SYS_DBNAME SQL_FN_SYS_IFNULL SQL_FN_SYS_USERNAME |
| SQL_TABLE_TERM | 1.0 | Uma cadeia de caracteres com o nome do fornecedor da fonte de dados para uma tabela; por exemplo, "tabela" ou "ficheiro". Esta sequência de caracteres pode estar em maiúsculas, menores ou mistas. Um driver SQL-92 compatível com o nível de entrada devolverá sempre "table". |
| SQL_TIMEDATE_ADD_INTERVALS | 2.0 | Uma máscara de bits SQLUINTEGER que enumera os intervalos de carimbo temporal suportados pelo driver e pela fonte de dados associada para a função escalar TIMESTAMPADD. As seguintes máscaras de bits são usadas para determinar quais os intervalos suportados: SQL_FN_TSI_FRAC_SECOND SQL_FN_TSI_SECOND SQL_FN_TSI_MINUTE SQL_FN_TSI_HOUR SQL_FN_TSI_DAY SQL_FN_TSI_WEEK SQL_FN_TSI_MONTH SQL_FN_TSI_QUARTER SQL_FN_TSI_YEAR Um driver FIPS Transitional level-conformant devolverá sempre uma máscara de bits onde todos estes bits estão definidos. |
| SQL_TIMEDATE_DIFF_INTERVALS | 2.0 | Uma máscara de bits SQLUINTEGER que enumera os intervalos de carimbo temporal suportados pelo driver e pela fonte de dados associada para a função escalar TIMESTAMPDIFF. As seguintes máscaras de bits são usadas para determinar quais os intervalos suportados: SQL_FN_TSI_FRAC_SECOND SQL_FN_TSI_SECOND SQL_FN_TSI_MINUTE SQL_FN_TSI_HOUR SQL_FN_TSI_DAY SQL_FN_TSI_WEEK SQL_FN_TSI_MONTH SQL_FN_TSI_QUARTER SQL_FN_TSI_YEAR Um driver FIPS Transitional level-conformant devolverá sempre uma máscara de bits onde todos estes bits estão definidos. |
| SQL_TIMEDATE_FUNCTIONS | 1.0 | Nota: 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. Uma máscara de bits SQLUINTEGER que enumera as funções escalares de data e hora suportadas pelo driver e pela fonte de dados associada. As seguintes máscaras de bits são usadas para determinar quais as funções de data e hora suportadas: SQL_FN_TD_CURRENT_DATE (ODBC 3.0) SQL_FN_TD_CURRENT_TIME (ODBC 3.0) SQL_FN_TD_CURRENT_TIMESTAMP (ODBC 3.0) SQL_FN_TD_CURDATE (ODBC 1.0) SQL_FN_TD_CURTIME (ODBC 1.0) SQL_FN_TD_DAYNAME (ODBC 2.0) SQL_FN_TD_DAYOFMONTH (ODBC 1.0) SQL_FN_TD_DAYOFWEEK (ODBC 1.0) SQL_FN_TD_DAYOFYEAR (ODBC 1.0) SQL_FN_TD_EXTRACT (ODBC 3.0) SQL_FN_TD_HOUR (ODBC 1.0) SQL_FN_TD_MINUTE (ODBC 1.0) SQL_FN_TD_MONTH (ODBC 1.0) SQL_FN_TD_MONTHNAME (ODBC 2.0) SQL_FN_TD_NOW (ODBC 1.0) SQL_FN_TD_QUARTER (ODBC 1.0) SQL_FN_TD_SECOND (ODBC 1.0) SQL_FN_TD_TIMESTAMPADD (ODBC 2.0) SQL_FN_TD_TIMESTAMPDIFF (ODBC 2.0) SQL_FN_TD_WEEK (ODBC 1.0) SQL_FN_TD_YEAR (ODBC 1.0) |
| SQL_TXN_CAPABLE | 1.0 | Nota: O tipo de informação foi introduzido no ODBC 1.0; cada valor de retorno é identificado com a versão em que foi introduzido. Um valor SQLUSMALLINT que descreve o suporte de transações no driver ou fonte de dados: SQL_TC_NONE = Transações não suportadas. (ODBC 1.0) SQL_TC_DML = As Transações podem conter apenas instruções de Linguagem de Manipulação de Dados (DML) (SELECT,INSERT, UPDATE, DELETE). As instruções da Linguagem de Definição de Dados (DDL) encontradas numa transação causam um erro. (ODBC 1.0) SQL_TC_DDL_COMMIT = As transações podem conter apenas instruções DML. As instruções DDL (CREATE TABLE, DROP INDEX, etc.) encontradas numa transação causam o commit da transação. (ODBC 2.0) SQL_TC_DDL_IGNORE = As transações podem conter apenas instruções DML. As instruções DDL encontradas numa transação são ignoradas. (ODBC 2.0) SQL_TC_ALL = As transações podem conter instruções DDL e DML em qualquer ordem. (ODBC 1.0) (Como o suporte a transações é obrigatório no SQL-92, um driver compatível com SQL-92 [qualquer nível] nunca devolverá SQL_TC_NONE.) |
| SQL_TXN_ISOLATION_OPTION | 1.0 | Uma máscara de bits SQLUINTEGER que enumera os níveis de isolamento de transações disponíveis do driver ou fonte de dados. As seguintes máscaras de bits são usadas juntamente com a flag para determinar quais as opções suportadas: SQL_TXN_READ_UNCOMMITTED SQL_TXN_READ_COMMITTED SQL_TXN_REPEATABLE_READ SQL_TXN_SERIALIZABLE Para descrições destes níveis de isolamento, veja a descrição de SQL_DEFAULT_TXN_ISOLATION. Para definir o nível de isolamento da transação, uma aplicação chama SQLSetConnectAttr para definir o atributo SQL_ATTR_TXN_ISOLATION. Para mais informações, consulte Função SQLSetConnectAttr. Um driver SQL-92 compatível com o nível de entrada devolverá sempre SQL_TXN_SERIALIZABLE conforme suportado. Um driver de transição compatível com o nível FIPS devolverá sempre todas estas opções conforme suportado. |
| SQL_UNION | 2.0 | Uma máscara de bits SQLUINTEGER que enumera o suporte para a cláusula UNION : SQL_U_UNION = A fonte de dados suporta a cláusula UNION . SQL_U_UNION_ALL = A fonte de dados suporta a palavra-chave ALL na cláusula UNION . (O SQLGetInfo devolve tanto SQL_U_UNION como SQL_U_UNION_ALL neste caso.) Um driver SQL-92 compatível com o nível de entrada irá sempre devolver ambas as opções conforme suportado. |
| SQL_USER_NAME | 1.0 | Uma cadeia de caracteres com o nome usado numa determinada base de dados, que pode ser diferente do nome de login. |
| SQL_XOPEN_CLI_YEAR | 3.0 | Uma cadeia de caracteres que indica o ano de publicação da especificação Open Group com a qual a versão do ODBC Driver Manager cumpre totalmente. |
Exemplo
O SQLGetInfo devolve listas de opções suportadas como uma máscara de bits SQLUINTEGER em *InfoValuePtr. A máscara de bits de cada opção é usada juntamente com o flag para determinar se a opção é suportada.
Por exemplo, uma aplicação pode usar o seguinte código para determinar se a função escalar SUBSTRING é suportada pelo driver associado à ligação.
Para outro exemplo de utilização do SQLGetInfo, veja Função SQLTables.
SQLUINTEGER fFuncs;
SQLGetInfo(hdbc,
SQL_STRING_FUNCTIONS,
(SQLPOINTER)&fFuncs,
sizeof(fFuncs),
NULL);
// SUBSTRING supported
if (fFuncs & SQL_FN_STR_SUBSTRING)
; // do something
// SUBSTRING not supported
else
; // do something else
Funções relacionadas
Devolver a definição de um atributo de conexão
Função SQLGetConnectAttr
Determinar se um driver suporta uma função
Função SQLGetFunctions
Devolver a definição de um atributo de instrução
Função SQLGetStmtAttr
Retorno de informação sobre os tipos de dados de uma fonte de dados
Função SQLGetTypeInfo
Ver também
Referência de API ODBC
Ficheiros de Cabeçalho ODBC