Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Överensstämmelse
Version introducerad: ODBC 1.0 Standardefterlevnad: ISO 92
Sammanfattning
SQLGetInfo returnerar allmän information om drivrutinen och datakällan som är associerad med en anslutning.
Syntax
SQLRETURN SQLGetInfo(
SQLHDBC ConnectionHandle,
SQLUSMALLINT InfoType,
SQLPOINTER InfoValuePtr,
SQLSMALLINT BufferLength,
SQLSMALLINT * StringLengthPtr);
Arguments
ConnectionHandle
Indata: Anslutningshandtag.
InfoType
[Indata] Typ av information.
InfoValuePtr
[Utdata] Pekare till en buffert där informationen ska returneras. Beroende på den begärda InfoType-informationen är den returnerade informationen något av följande: en null-avslutad teckensträng, ett SQLUSMALLINT-värde, en SQLUINTEGER-bitmask, en SQLUINTEGER-flagga, ett binärt SQLUINTEGER-värde eller ett SQLULEN-värde.
Om Argumentet InfoType är SQL_DRIVER_HDESC eller SQL_DRIVER_HSTMT är argumentet InfoValuePtr både indata och utdata. (Mer information finns i SQL_DRIVER_HDESC- eller SQL_DRIVER_HSTMT-beskrivningarna senare i den här funktionsbeskrivningen.)
Om InfoValuePtr är NULL returnerar StringLengthPtr fortfarande det totala antalet byte (exklusive null-avslutningstecknet för teckendata) som ska returneras i bufferten som infoValuePtr pekar på.
BufferLength
[Indata] Längden på *InfoValuePtr-bufferten . Om värdet i *InfoValuePtr inte är en teckensträng eller om InfoValuePtr är en nullpekare ignoreras argumentet BufferLength . Drivrutinen förutsätter att storleken på *InfoValuePtr är SQLUSMALLINT eller SQLUINTEGER, baserat på InfoType. Om *InfoValuePtr är en Unicode-sträng (när du anropar SQLGetInfoW) måste BufferLength-argumentet vara ett jämnt tal. annars returneras SQLSTATE HY090 (ogiltig sträng- eller buffertlängd).
StringLengthPtr
[Utdata] Pekare till en buffert där det totala antalet byte (exklusive null-avslutningstecknet för teckendata) ska returneras i *InfoValuePtr.
Om antalet tillgängliga byte för teckendata är större än eller lika med BufferLength trunkeras informationen i *InfoValuePtr till BufferLength-byte minus längden på ett null-avslutningstecken och avslutas av drivrutinen.
För alla andra typer av data ignoreras värdet för BufferLength och drivrutinen antar att storleken på *InfoValuePtr är SQLUSMALLINT eller SQLUINTEGER, beroende på InfoType.
Retur
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR eller SQL_INVALID_HANDLE.
Diagnostik
När SQLGetInfo returnerar antingen SQL_ERROR eller SQL_SUCCESS_WITH_INFO kan ett associerat SQLSTATE-värde hämtas genom att anropa SQLGetDiagRec med en HandleType av SQL_HANDLE_DBC och ett handtagför ConnectionHandle. I följande tabell visas DE SQLSTATE-värden som vanligtvis returneras av SQLGetInfo och förklarar var och en i kontexten för den här funktionen. notationen "(DM)" föregår beskrivningarna av SQLSTATEs som returneras av Driver Manager. Returkoden som är associerad med varje SQLSTATE-värde är SQL_ERROR, om inget annat anges.
| SQLSTATE | Error | Beskrivning |
|---|---|---|
| 01000 | Allmän varning | Informationsmeddelande för drivrutinsspecifikt. (Funktionen returnerar SQL_SUCCESS_WITH_INFO.) |
| 01004 | Strängdata, höger trunkerade | Bufferten *InfoValuePtr var inte tillräckligt stor för att returnera all begärd information. Därför trunkerades informationen. Längden på den begärda informationen i dess osanna form returneras i *StringLengthPtr. (Funktionen returnerar SQL_SUCCESS_WITH_INFO.) |
| 08003 | Anslutningen är inte öppen | (DM) Den typ av information som begärs i InfoType kräver en öppen anslutning. Av de informationstyper som är reserverade av ODBC kan endast SQL_ODBC_VER returneras utan en öppen anslutning. |
| 08S01 | Kommunikationslänkfel | Kommunikationslänken mellan drivrutinen och datakällan som drivrutinen var ansluten till misslyckades innan funktionen slutförde bearbetningen. |
| HY000 | Allmänt fel | Ett fel uppstod för vilket det inte fanns någon specifik SQLSTATE och för vilken ingen implementeringsspecifik SQLSTATE definierades. Felmeddelandet som returnerades av SQLGetDiagRec i *MessageText-bufferten beskriver felet och dess orsak. |
| HY001 | Fel vid minnesallokering | Drivrutinen kunde inte allokera minne som krävs för att stödja körning eller slutförande av funktionen. |
| HY010 | Funktionssekvensfel | (DM) SQLExecute, SQLExecDirect eller SQLMoreResults anropades för StatementHandle och returnerades SQL_PARAM_DATA_AVAILABLE. Den här funktionen anropades innan data hämtades för alla strömmade parametrar. |
| HY013 | Minneshanteringsfel | Det gick inte att bearbeta funktionsanropet eftersom det inte gick att komma åt underliggande minnesobjekt, möjligen på grund av minnesbrist. |
| HY024 | Ogiltigt attributvärde | (DM) Argumentet InfoType var SQL_DRIVER_HSTMT och värdet som infoValuePtr pekade på var inte en giltig instruktionsreferens. (DM) Argumentet InfoType var SQL_DRIVER_HDESC och värdet som infoValuePtr pekade på var inte ett giltigt deskriptorhandtag. |
| HY090 | Ogiltig sträng- eller buffertlängd | (DM) Värdet som angavs för argumentet BufferLength var mindre än 0. (DM) Värdet som angavs för BufferLength var ett udda tal och *InfoValuePtr var av en Unicode-datatyp. |
| HY096 | Informationstyp som inte ligger inom intervallet | Värdet som angavs för argumentet InfoType var inte giltigt för den version av ODBC som stöds av drivrutinen. |
| HY117 | Anslutningen pausas på grund av okänt transaktionstillstånd. Endast frånkopplings- och skrivskyddade funktioner tillåts. | (DM) Mer information om pausat tillstånd finns i SQLEndTran-funktion. |
| HYC00 | Valfritt fält har inte implementerats | Värdet som angavs för argumentet InfoType var ett drivrutinsspecifikt värde som inte stöds av drivrutinen. |
| HYT01 | Tidsgränsen för anslutningen gick ut | Tidsgränsen för anslutningen löpte ut innan datakällan svarade på begäran. Tidsgränsen för anslutningen anges via SQLSetConnectAttr, SQL_ATTR_CONNECTION_TIMEOUT. |
| IM001 | Drivrutinen stöder inte den här funktionen | (DM) Drivrutinen som motsvarar ConnectionHandle stöder inte funktionen. |
Comments
De för närvarande definierade informationstyperna visas i "Informationstyper" senare i det här avsnittet. Det förväntas att fler definieras för att dra nytta av olika datakällor. Ett antal informationstyper reserveras av ODBC. drivrutinsutvecklare måste reservera värden för sin egen drivrutinsspecifik användning från Open Group. SQLGetInfo utför ingen Unicode-konvertering eller thunking (se Bilaga A: ODBC-felkoder i ODBC-programmerarens referens) för drivrutinsdefinierade InfoTypes. Mer information finns i drivrutinsspecifika datatyper, beskrivningstyper, informationstyper, diagnostiktyper och attribut. Formatet på den information som returneras i *InfoValuePtr beror på den begärda InfoType-filen . SQLGetInfo returnerar information i ett av fem olika format:
En null-avslutad teckensträng
Ett SQLUSMALLINT-värde
En SQLUINTEGER-bitmask
Ett SQLUINTEGER-värde
Ett binärt SQLUINTEGER-värde
Formatet för var och en av följande informationstyper anges i typens beskrivning. Programmet måste omvandla värdet som returneras i *InfoValuePtr i enlighet med detta. Ett exempel på hur ett program kan hämta data från en SQLUINTEGER-bitmask finns i "Kodexempel".
En drivrutin måste returnera ett värde för varje informationstyp som definieras i följande tabeller. Om en informationstyp inte gäller för drivrutinen eller datakällan returnerar drivrutinen ett av värdena som anges i följande tabell.
| Informationstyp | Värde |
|---|---|
| Teckensträng ("Y" eller "N") | "N" |
| Teckensträng (inte "Y" eller "N") | Tom sträng |
| SQLUSMALLINT | 0 |
| SQLUINTEGER-bitmask eller SQLUINTEGER-binärt värde | 0L |
Om en datakälla till exempel inte stöder procedurer returnerar SQLGetInfo värdena som anges i följande tabell för värdena för InfoType som är relaterade till procedurer.
| InfoType | Värde |
|---|---|
| SQL_PROCEDURES | "N" |
| SQL_ACCESSIBLE_PROCEDURES | "N" |
| SQL_MAX_PROCEDURE_NAME_LEN | 0 |
| SQL_PROCEDURE_TERM | Tom sträng |
SQLGetInfo returnerar SQLSTATE HY096 (ogiltigt argumentvärde) för värden för InfoType som finns i det intervall av informationstyper som är reserverade för användning av ODBC men som inte definieras av den version av ODBC som stöds av drivrutinen. För att avgöra vilken version av ODBC en drivrutin uppfyller anropar ett program SQLGetInfo med den SQL_DRIVER_ODBC_VER informationstypen. SQLGetInfo returnerar SQLSTATE HYC00 (valfri funktion har inte implementerats) för värden för InfoType som finns i det intervall av informationstyper som är reserverade för drivrutinsspecifik användning men som inte stöds av drivrutinen.
Alla anrop till SQLGetInfo kräver en öppen anslutning, förutom när InfoType är SQL_ODBC_VER, som returnerar versionen av Driver Manager.
Informationstyper
I det här avsnittet visas de informationstyper som stöds av SQLGetInfo. Informationstyper grupperas kategoriskt och visas alfabetiskt. Informationstyper som har lagts till eller bytt namn för ODBC 3*.x* visas också.
Drivrutinsinformation
Följande värden i InfoType-argumentet returnerar information om ODBC-drivrutinen, till exempel antalet aktiva instruktioner, datakällans namn och efterlevnadsnivån för gränssnittsstandarder:
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
Anmärkning
När du implementerar SQLGetInfo kan en drivrutin förbättra prestanda genom att minimera antalet gånger som information skickas eller begärs från servern.
DBMS-produktinformation
Följande värden för Argumentet InfoType returnerar information om DBMS-produkten, till exempel DBMS-namnet och versionen:
SQL_DATABASE_NAME
SQL_DBMS_NAME
SQL_DBMS_VER
Information om datakälla
Följande värden för Argumentet InfoType returnerar information om datakällan, till exempel markörens egenskaper och transaktionsfunktioner:
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 som stöds
Följande värden för Argumentet InfoType returnerar information om SQL-uttryck som stöds av datakällan. SQL-syntaxen för varje funktion som beskrivs av dessa informationstyper är SQL-92-syntaxen. Dessa informationstyper beskriver inte hela SQL-92-grammatiken fullständigt. I stället beskriver de delar av grammatiken som datakällor vanligtvis erbjuder olika stödnivåer för. Mer specifikt omfattas de flesta DDL-uttrycken i SQL-92.
Program bör fastställa den allmänna nivån av grammatik som stöds från SQL_SQL_CONFORMANCE informationstyp och använda de andra informationstyperna för att fastställa variationer från den angivna standardefterlevnadsnivån.
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
SQL-gränser
Följande värden i InfoType-argumentet returnerar information om de gränser som tillämpas på identifierare och satser i SQL-instruktioner, till exempel maximala längden på identifierare och det maximala antalet kolumner i en urvalslista. Begränsningar kan införas av antingen drivrutinen eller datakällan.
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
Information om skalär funktion
Följande värden i Argumentet InfoType returnerar information om de skalärfunktioner som stöds av datakällan och drivrutinen. Mer information om skalära funktioner finns i Bilaga E: Skalärfunktioner.
SQL_CONVERT_FUNCTIONS
SQL_NUMERIC_FUNCTIONS
SQL_STRING_FUNCTIONS
SQL_SYSTEM_FUNCTIONS
SQL_TIMEDATE_ADD_INTERVALS
SQL_TIMEDATE_DIFF_INTERVALS
SQL_TIMEDATE_FUNCTIONS
Konverteringsinformation
Följande värden för Argumentet InfoType returnerar en lista över DE SQL-datatyper som datakällan kan konvertera den angivna SQL-datatypen till med funktionen KONVERTERA skalär:
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
Informationstyper har lagts till för ODBC 3.x
Följande värden för Argumentet InfoType har lagts till för 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
Informationstyper som har bytt namn för ODBC 3.x
Följande värden för Argumentet InfoType har bytt namn för ODBC 3.x.
| Gammalt namn | Nytt namn |
|---|---|
| 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 |
Informationstyper inaktuella i ODBC 3.x
Följande värden för Argumentet InfoType har föråldrats i ODBC 3.x. ODBC 3.x-drivrutiner måste fortsätta att stödja dessa informationstyper för bakåtkompatibilitet med ODBC 2.x-program. (Mer information om dessa typer finns i SQLGetInfo-stöd i bilaga G: Drivrutinsriktlinjer för bakåtkompatibilitet.)
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
Beskrivningar av informationstyp
I följande tabell visas varje informationstyp i alfabetisk ordning, den version av ODBC som den introducerades i och dess beskrivning.
| Informationstyp | ODBC-version | Beskrivning |
|---|---|---|
| SQL_ACCESSIBLE_PROCEDURES | 1.0 | En teckensträng: "Y" om användaren kan köra alla procedurer som returneras av SQLProcedures. "N" om det kan finnas procedurer som returneras som användaren inte kan köra. |
| SQL_ACCESSIBLE_TABLES | 1.0 | En teckensträng: "Y" om användaren garanteras SELECT-behörigheter för alla tabeller som returneras av SQLTables. "N" om det kan finnas tabeller som returneras som användaren inte kan komma åt. |
| SQL_ACTIVE_ENVIRONMENTS | 3.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet aktiva miljöer som drivrutinen kan stödja. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. |
| SQL_AGGREGATE_FUNCTIONS | 3.0 | Ett SQLUINTEGER-bitmaskuppräkningsstöd för aggregeringsfunktioner: SQL_AF_ALL SQL_AF_AVG SQL_AF_COUNT SQL_AF_DISTINCT SQL_AF_MAX SQL_AF_MIN SQL_AF_SUM En SQL-92 Entry level-conformant-drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_ALTER_DOMAIN | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i ALTER DOMAIN-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. En SQL-92 Fullständig nivåkompatibel drivrutin returnerar alltid alla bitmasker. Ett returvärde på "0" innebär att ALTER DOMAIN-instruktionen inte stöds. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_AD_ADD_DOMAIN_CONSTRAINT = Du kan lägga till en domänbegränsning (fullständig nivå) SQL_AD_ADD_DOMAIN_DEFAULT = <ändra domänuppsättningens><domänstandardsats> stöds (fullständig nivå) SQL_AD_CONSTRAINT_NAME_DEFINITION = <definitionssatsen> för villkorsnamn stöds för namngivning av domänbegränsningar (mellannivå) SQL_AD_DROP_DOMAIN_CONSTRAINT = <drop domain constraint-satsen> stöds (fullständig nivå) SQL_AD_DROP_DOMAIN_DEFAULT = <standardsatsen> för att ändra domänavlämningsdomän><stöds (fullständig nivå) I följande bitar anges de villkorsattribut> som stöds <om <du har stöd för att lägga till domänbegränsningar> (den SQL_AD_ADD_DOMAIN_CONSTRAINT biten har angetts): SQL_AD_ADD_CONSTRAINT_DEFERRABLE (fullständig nivå) SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE (fullständig nivå) SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED (fullständig nivå) SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE (fullständig nivå) |
| SQL_ALTER_TABLE | 2.0 | En SQLUINTEGER-bitmask som räknar upp satserna i ALTER TABLE-instruktionen som stöds av datakällan. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_AT_ADD_COLUMN_COLLATION = <lägg till kolumnsats> stöds, med möjlighet att ange kolumnsortering (fullständig nivå) (ODBC 3.0) SQL_AT_ADD_COLUMN_DEFAULT = <lägg till kolumnsats> stöds, med möjlighet att ange kolumnstandarder (FIPS-övergångsnivå) (ODBC 3.0) SQL_AT_ADD_COLUMN_SINGLE = <lägg till kolumn> stöds (FIPS övergångsnivå) (ODBC 3.0) SQL_AT_ADD_CONSTRAINT = <lägg till kolumnsats> stöds, med möjlighet att ange kolumnbegränsningar (FIPS-övergångsnivå) (ODBC 3.0) SQL_AT_ADD_TABLE_CONSTRAINT = <add table constraint> clause is supported (FIPS Transitional level) (ODBC 3.0) SQL_AT_CONSTRAINT_NAME_DEFINITION = <definition> av villkorsnamn stöds för namngivning av kolumn- och tabellbegränsningar (mellannivå) (ODBC 3.0) SQL_AT_DROP_COLUMN_CASCADE = <drop column> CASCADE stöds (FIPS Övergångsnivå) (ODBC 3.0) SQL_AT_DROP_COLUMN_DEFAULT = <standardsatsen> alter column><drop column stöds (mellannivå) (ODBC 3.0) SQL_AT_DROP_COLUMN_RESTRICT = <drop column> RESTRICT stöds (FIPS-övergångsnivå) (ODBC 3.0) SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE (ODBC 3.0) SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = <drop column> RESTRICT stöds (FIPS Övergångsnivå) (ODBC 3.0) SQL_AT_SET_COLUMN_DEFAULT = <standardsatsen> alter column><set column stöds (mellannivå) (ODBC 3.0) Följande bitar anger stödvillkorsattributen <> om det finns stöd för att ange kolumn- eller tabellbegränsningar (den SQL_AT_ADD_CONSTRAINT biten har angetts): SQL_AT_CONSTRAINT_INITIALLY_DEFERRED (fullständig nivå) (ODBC 3.0) SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE (fullständig nivå) (ODBC 3.0) SQL_AT_CONSTRAINT_DEFERRABLE (fullständig nivå) (ODBC 3.0) SQL_AT_CONSTRAINT_NON_DEFERRABLE (fullständig nivå) (ODBC 3.0) |
| SQL_ASYNC_DBC_FUNCTIONS | 3,8 | Ett SQLUINTEGER-värde som anger om drivrutinen kan köra funktioner asynkront på anslutningshandtaget. SQL_ASYNC_DBC_CAPABLE = Drivrutinen kan köra anslutningsfunktioner asynkront. SQL_ASYNC_DBC_NOT_CAPABLE = Drivrutinen kan inte köra anslutningsfunktioner asynkront. |
| SQL_ASYNC_MODE | 3.0 | Ett SQLUINTEGER-värde som anger nivån för asynkront stöd i drivrutinen: SQL_AM_CONNECTION = Asynkron körning på anslutningsnivå stöds. Antingen är alla instruktionsreferenser som är associerade med en viss anslutningsreferens i asynkront läge eller så är alla i synkront läge. En instruktionsreferens för en anslutning kan inte vara i asynkront läge medan ett annat instruktionshandtag på samma anslutning är i synkront läge och vice versa. SQL_AM_STATEMENT = Asynkron körning på instruktionsnivå stöds. Vissa instruktionshandtag som är associerade med ett anslutningshandtag kan vara i asynkront läge, medan andra instruktionshandtag på samma anslutning är i synkront läge. SQL_AM_NONE = Asynkront läge stöds inte. |
| SQL_ASYNC_NOTIFICATION | 3,8 | Ett SQLUINTEGER-värde som anger om drivrutinen stöder asynkrona meddelanden: SQL_ASYNC_NOTIFICATION_CAPABLE = Asynkron körningsavisering stöds av drivrutinen. SQL_ASYNC_NOTIFICATION_NOT_CAPABLE = Asynkron körningsavisering stöds inte av drivrutinen. Det finns två kategorier av Asynkrona ODBC-åtgärder: asynkrona åtgärder på anslutningsnivå och asynkrona åtgärder på instruktionsnivå. Om en drivrutin returnerar SQL_ASYNC_NOTIFICATION_CAPABLE måste den ha stöd för meddelanden för alla API:er om att den kan köras asynkront. |
| SQL_BATCH_ROW_COUNT | 3.0 | En SQLUINTEGER-bitmask som räknar upp drivrutinens beteende med avseende på tillgängligheten för radantal. Följande bitmasker används tillsammans med informationstypen: SQL_BRC_ROLLED_UP = Radantal för efterföljande INSERT-, DELETE- eller UPDATE-instruktioner summeras till en. Om den här biten inte har angetts är radantal tillgängliga för varje instruktion. SQL_BRC_PROCEDURES = Radantal, om några, är tillgängliga när en batch körs i en lagrad procedur. Om radantal är tillgängliga kan de summeras eller vara individuellt tillgängliga, beroende på SQL_BRC_ROLLED_UP bit. SQL_BRC_EXPLICIT = Radantal, om några, är tillgängliga när en batch körs direkt genom att anropa SQLExecute eller SQLExecDirect. Om radantal är tillgängliga kan de summeras eller vara individuellt tillgängliga, beroende på SQL_BRC_ROLLED_UP bit. |
| SQL_BATCH_SUPPORT | 3.0 | En SQLUINTEGER-bitmask som räknar upp drivrutinens stöd för batchar. Följande bitmasker används för att avgöra vilken nivå som stöds: SQL_BS_SELECT_EXPLICIT = Drivrutinen stöder explicita batchar som kan ha genererande instruktioner för resultatuppsättningar. SQL_BS_ROW_COUNT_EXPLICIT = Drivrutinen stöder explicita batchar som kan ha radantalsgenererande instruktioner. SQL_BS_SELECT_PROC = Drivrutinen stöder explicita procedurer som kan ha resultatuppsättningsgenererande instruktioner. SQL_BS_ROW_COUNT_PROC = Drivrutinen stöder explicita procedurer som kan ha radräkningsgenererande instruktioner. |
| SQL_BOOKMARK_PERSISTENCE | 2.0 | En SQLUINTEGER-bitmask som räknar upp de åtgärder genom vilka bokmärken bevaras. Följande bitmasker används tillsammans med flaggan för att avgöra genom vilka alternativ bokmärken bevaras: SQL_BP_CLOSE = Bokmärken är giltiga när ett program anropar SQLFreeStmt med alternativet SQL_CLOSE eller SQLCloseCursor för att stänga markören som är associerad med en instruktion. SQL_BP_DELETE = Bokmärket för en rad är giltigt efter att raden har tagits bort. SQL_BP_DROP = Bokmärken är giltiga när ett program anropar SQLFreeHandle med en HandleType av SQL_HANDLE_STMT för att släppa en instruktion. SQL_BP_TRANSACTION = Bokmärken är giltiga när ett program checkar in eller återställer en transaktion. SQL_BP_UPDATE = Bokmärket för en rad är giltigt när en kolumn i den raden har uppdaterats, inklusive nyckelkolumner. SQL_BP_OTHER_HSTMT = Ett bokmärke som är associerat med en -instruktion kan användas med en annan instruktion. Om inte SQL_BP_CLOSE eller SQL_BP_DROP anges måste markören på den första instruktionen vara öppen. |
| SQL_CATALOG_LOCATION | 2.0 | Ett SQLUSMALLINT-värde som anger katalogens position i ett kvalificerat tabellnamn: SQL_CL_START SQL_CL_END En Xbase-drivrutin returnerar till exempel SQL_CL_START eftersom katalognamnet (katalogen) är i början av tabellnamnet, som i \EMPDATA\EMP. DBF. En ORACLE Server-drivrutin returnerar SQL_CL_END eftersom katalogen är i slutet av tabellnamnet, som i ADMIN. EMP@EMPDATA. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid SQL_CL_START. Värdet 0 returneras om kataloger inte stöds av datakällan. För att avgöra om kataloger stöds anropar ett program SQLGetInfo med SQL_CATALOG_NAME informationstyp. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_QUALIFIER_LOCATION . |
| SQL_CATALOG_NAME | 3.0 | En teckensträng: "Y" om servern stöder katalognamn eller "N" om den inte gör det. En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid "Y". |
| SQL_CATALOG_NAME_SEPARATOR | 1.0 | En teckensträng: det tecken eller tecken som datakällan definierar som avgränsare mellan ett katalognamn och det kvalificerade namnelementet som följer eller föregår det. En tom sträng returneras om kataloger inte stöds av datakällan. För att avgöra om kataloger stöds anropar ett program SQLGetInfo med SQL_CATALOG_NAME informationstyp. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid ".". Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_QUALIFIER_NAME_SEPARATOR . |
| SQL_CATALOG_TERM | 1.0 | En teckensträng med datakällans leverantörsnamn för en katalog. till exempel "databas" eller "katalog". Den här strängen kan vara i övre, nedre eller blandade skiftläge. En tom sträng returneras om kataloger inte stöds av datakällan. För att avgöra om kataloger stöds anropar ett program SQLGetInfo med SQL_CATALOG_NAME informationstyp. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid "katalog". Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_QUALIFIER_TERM . |
| SQL_CATALOG_USAGE | 2.0 | En SQLUINTEGER-bitmask som räknar upp de instruktioner där kataloger kan användas. Följande bitmasker används för att avgöra var kataloger kan användas: SQL_CU_DML_STATEMENTS = Kataloger stöds i alla instruktioner för datamanipuleringsspråk: SELECT, INSERT, UPDATE, DELETE och om det stöds väljer du för uppdatering och placerade instruktioner för uppdatering och borttagning. SQL_CU_PROCEDURE_INVOCATION = Kataloger stöds i ODBC-procedurens anropsinstrukation. SQL_CU_TABLE_DEFINITION = Kataloger stöds i alla tabelldefinitionssatser: CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP TABLE och DROP VIEW. SQL_CU_INDEX_DEFINITION = Kataloger stöds i alla indexdefinitionssatser: CREATE INDEX och DROP INDEX. SQL_CU_PRIVILEGE_DEFINITION = Kataloger stöds i alla behörighetsdefinitionsuttryck: GRANT och REVOKE. Värdet 0 returneras om kataloger inte stöds av datakällan. För att avgöra om kataloger stöds anropar ett program SQLGetInfo med SQL_CATALOG_NAME informationstyp. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid en bitmask med alla dessa bitar inställda. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_QUALIFIER_USAGE . |
| SQL_COLLATION_SEQ | 3.0 | Namnet på sorteringssekvensen. Det här är en teckensträng som anger namnet på standardsortering för standardteckenuppsättningen för den här servern (till exempel ISO 8859-1 eller EBCDIC). Om detta är okänt returneras en tom sträng. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid en icke-tom sträng. |
| SQL_COLUMN_ALIAS | 2.0 | En teckensträng: "Y" om datakällan stöder kolumnalias. annars "N". Ett kolumnalias är ett alternativt namn som kan anges för en kolumn i urvalslistan med hjälp av en AS-sats. En SQL-92 Entry level-conformant-drivrutin returnerar alltid "Y". |
| SQL_CONCAT_NULL_BEHAVIOR | 1.0 | Ett SQLUSMALLINT-värde som anger hur datakällan hanterar sammanfogningen av kolumner av typen NULL-värdetecken med datatypskolumner som inte är NULL-värden: SQL_CB_NULL = Resultatet är NULL-värde. SQL_CB_NON_NULL = Resultatet är sammanlänkning av kolumn eller kolumner som inte är NULL-värden. En SQL-92-drivrutin för instegsnivå returnerar alltid 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 | En SQLUINTEGER-bitmask. Bitmasken anger de konverteringar som stöds av datakällan med funktionen KONVERTERA skalär för data av den typ som heter i InfoType. Om bitmasken är lika med noll stöder datakällan inte några konverteringar från data av den namngivna typen, inklusive konvertering till samma datatyp. För att till exempel avgöra om en datakälla stöder konvertering av SQL_INTEGER data till SQL_BIGINT datatyp anropar ett program SQLGetInfo med InfoType för SQL_CONVERT_INTEGER. Programmet utför en AND-åtgärd med den returnerade bitmasken och SQL_CVT_BIGINT. Om det resulterande värdet inte är noll stöds konverteringen. Följande bitmasker används för att avgöra vilka konverteringar som stöds: 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 | En SQLUINTEGER-bitmask som räknar upp skalära konverteringsfunktioner som stöds av drivrutinen och tillhörande datakälla. Följande bitmask används för att avgöra vilka konverteringsfunktioner som stöds: SQL_FN_CVT_CASTSQL_FN_CVT_CONVERT |
| SQL_CORRELATION_NAME | 1.0 | Ett SQLUSMALLINT-värde som anger om tabellkorrelationsnamn stöds: SQL_CN_NONE = Korrelationsnamn stöds inte. SQL_CN_DIFFERENT = Korrelationsnamn stöds men måste skilja sig från namnen på de tabeller som de representerar. SQL_CN_ANY = Korrelationsnamn stöds och kan vara valfritt giltigt användardefinierat namn. En SQL-92 Entry level-conformant-drivrutin returnerar alltid SQL_CN_ANY. |
| SQL_CREATE_ASSERTION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i instruktionen CREATE ASSERTION , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CA_CREATE_ASSERTION Följande bitar anger villkorsattributet som stöds om möjligheten att uttryckligen ange villkorsattribut stöds (se informationstyperna SQL_ALTER_TABLE och SQL_CREATE_TABLE): SQL_CA_CONSTRAINT_INITIALLY_DEFERRED SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE SQL_CA_CONSTRAINT_DEFERRABLE SQL_CA_CONSTRAINT_NON_DEFERRABLE En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alla dessa alternativ som stöds. Ett returvärde på "0" innebär att CREATE ASSERTION-instruktionen inte stöds. |
| SQL_CREATE_CHARACTER_SET | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i instruktionen CREATE CHARACTER SET , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CCS_CREATE_CHARACTER_SET SQL_CCS_COLLATE_CLAUSE SQL_CCS_LIMITED_COLLATION En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alla dessa alternativ som stöds. Ett returvärde på "0" innebär att instruktionen CREATE CHARACTER SET inte stöds. |
| SQL_CREATE_COLLATION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i CREATE COLLATION-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_CCOL_CREATE_COLLATION En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid det här alternativet som stöds. Ett returvärde på "0" innebär att CREATE COLLATION-instruktionen inte stöds. |
| SQL_CREATE_DOMAIN | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i CREATE DOMAIN-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CDO_CREATE_DOMAIN = CREATE DOMAIN-instruktionen stöds (mellannivå). SQL_CDO_CONSTRAINT_NAME_DEFINITION = <definition> av villkorsnamn stöds för namngivning av domänbegränsningar (mellannivå). Följande bitar anger möjligheten att skapa kolumnbegränsningar: SQL_CDO_DEFAULT = Det går att ange domänbegränsningar (mellannivå) SQL_CDO_CONSTRAINT = Att ange domänstandarder stöds (mellannivå) SQL_CDO_COLLATION = Det går att ange domänsortering (fullständig nivå) Följande bitar anger vilka villkorsattribut som stöds om det finns stöd för att ange domänbegränsningar (SQL_CDO_DEFAULT anges): SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED (fullständig nivå) SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE (fullständig nivå) SQL_CDO_CONSTRAINT_DEFERRABLE (fullständig nivå) SQL_CDO_CONSTRAINT_NON_DEFERRABLE (fullständig nivå) Ett returvärde på "0" innebär att CREATE DOMAIN-instruktionen inte stöds. |
| SQL_CREATE_SCHEMA | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i CREATE SCHEMA-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CS_CREATE_SCHEMA SQL_CS_AUTHORIZATION SQL_CS_DEFAULT_CHARACTER_SET En SQL-92 Intermediate level-conformant-drivrutin returnerar alltid alternativen SQL_CS_CREATE_SCHEMA och SQL_CS_AUTHORIZATION som stöds. Dessa måste också stödjas på SQL-92-startnivån, men inte nödvändigtvis som SQL-instruktioner. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_CREATE_TABLE | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i CREATE TABLE-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CT_CREATE_TABLE = CREATE TABLE-instruktionen stöds. (Startnivå) SQL_CT_TABLE_CONSTRAINT = Du kan ange tabellbegränsningar (FIPS-övergångsnivå) SQL_CT_CONSTRAINT_NAME_DEFINITION = Definitionssatsen <> för villkorsnamn stöds för namngivning av kolumn- och tabellbegränsningar (mellannivå) Följande bitar anger möjligheten att skapa temporära tabeller: SQL_CT_COMMIT_PRESERVE = Borttagna rader bevaras vid incheckning. (Fullständig nivå) SQL_CT_COMMIT_DELETE = Borttagna rader tas bort vid incheckning. (Fullständig nivå) SQL_CT_GLOBAL_TEMPORARY = Globala temporära tabeller kan skapas. (Fullständig nivå) SQL_CT_LOCAL_TEMPORARY = Lokala temporära tabeller kan skapas. (Fullständig nivå) Följande bitar anger möjligheten att skapa kolumnbegränsningar: SQL_CT_COLUMN_CONSTRAINT = Det går att ange kolumnbegränsningar (FIPS-övergångsnivå) SQL_CT_COLUMN_DEFAULT = Det går att ange kolumnstandarder (FIPS-övergångsnivå) SQL_CT_COLUMN_COLLATION = Det går att ange kolumnsortering (fullständig nivå) Följande bitar anger de villkorsattribut som stöds om du anger kolumn- eller tabellbegränsningar stöds: SQL_CT_CONSTRAINT_INITIALLY_DEFERRED (fullständig nivå) SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE (fullständig nivå) SQL_CT_CONSTRAINT_DEFERRABLE (fullständig nivå) SQL_CT_CONSTRAINT_NON_DEFERRABLE (fullständig nivå) |
| SQL_CREATE_TRANSLATION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i INSTRUKTIONEN SKAPA ÖVERSÄTTNING , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_CTR_CREATE_TRANSLATION En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid dessa alternativ som stöds. Ett returvärde på "0" innebär att instruktionen CREATE TRANSLATION inte stöds. |
| SQL_CREATE_VIEW | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i CREATE VIEW-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_CV_CREATE_VIEW SQL_CV_CHECK_OPTION SQL_CV_CASCADED SQL_CV_LOCAL Ett returvärde på "0" innebär att CREATE VIEW-instruktionen inte stöds. En SQL-92 Entry level-conformant-drivrutin returnerar alltid alternativen SQL_CV_CREATE_VIEW och SQL_CV_CHECK_OPTION som stöds. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_CURSOR_COMMIT_BEHAVIOR | 1.0 | Ett SQLUSMALLINT-värde som anger hur en COMMIT-åtgärd påverkar markörer och förberedda instruktioner i datakällan (datakällans beteende när du genomför en transaktion). Värdet för det här attributet återspeglar det aktuella tillståndet för nästa inställning: SQL_COPT_SS_PRESERVE_CURSORS. SQL_CB_DELETE = Stäng markörer och ta bort förberedda instruktioner. Om du vill använda markören igen måste programmet omförbereda och köra instruktionen igen. SQL_CB_CLOSE = Stäng markörer. För förberedda instruktioner kan programmet anropa SQLExecute på -instruktionen utan att anropa SQLPrepare igen. Standardvärdet för SQL ODBC-drivrutinen är SQL_CB_CLOSE. Det innebär att SQL ODBC-drivrutinen stänger markören när du genomför en transaktion. SQL_CB_PRESERVE = Bevara markörer i samma position som före COMMIT-åtgärden . Programmet kan fortsätta att hämta data eller stänga markören och köra instruktionen igen utan att göra om den. |
| SQL_CURSOR_ROLLBACK_BEHAVIOR | 1.0 | Ett SQLUSMALLINT-värde som anger hur en ÅTERSTÄLLNINGsåtgärd påverkar markörer och förberedda instruktioner i datakällan: SQL_CB_DELETE = Stäng markörer och ta bort förberedda instruktioner. Om du vill använda markören igen måste programmet omförbereda och köra instruktionen igen. SQL_CB_CLOSE = Stäng markörer. För förberedda instruktioner kan programmet anropa SQLExecute på -instruktionen utan att anropa SQLPrepare igen. SQL_CB_PRESERVE = Bevara markörer i samma position som före återställningsåtgärden. Programmet kan fortsätta att hämta data eller stänga markören och köra instruktionen igen utan att göra om den. |
| SQL_CURSOR_SENSITIVITY | 3.0 | Ett SQLUINTEGER-värde som anger stöd för markörkänslighet: SQL_INSENSITIVE = Alla markörer i instruktionshandtaget visar resultatuppsättningen utan att återspegla några ändringar som gjorts av någon annan markör inom samma transaktion. SQL_UNSPECIFIED = Det är ospecificerat om markörer på instruktionshandtaget synliggöra de ändringar som gjorts i en resultatuppsättning av en annan markör inom samma transaktion. Markörer på instruktionshandtaget kan göra synliga inga, vissa eller alla sådana ändringar. SQL_SENSITIVE = Markörer är känsliga för ändringar som gjorts av andra markörer inom samma transaktion. En SQL-92 Entry level-conformant-drivrutin returnerar alltid alternativet SQL_UNSPECIFIED som stöds. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alternativet SQL_INSENSITIVE som stöds. |
| SQL_DATA_SOURCE_NAME | 1.0 | En teckensträng med datakällans namn som användes under anslutningen. Om programmet heter SQLConnect är detta värdet för argumentet szDSN . Om programmet heter SQLDriverConnect eller SQLBrowseConnect är detta värdet för DSN-nyckelordet i reťazec pripojenia som skickas till drivrutinen. Om reťazec pripojenia inte innehåller nyckelordet DSN (till exempel när det innehåller nyckelordet DRIVER) är detta en tom sträng. |
| SQL_DATA_SOURCE_READ_ONLY | 1.0 | En teckensträng. "Y" om datakällan är inställd på SKRIVSKYDDat läge, "N" om det är något annat. Denna egenskap avser endast själva datakällan; det är inte en egenskap hos drivrutinen som ger åtkomst till datakällan. En drivrutin som är skrivskyddad kan användas med en datakälla som är skrivskyddad. Om en drivrutin är skrivskyddad måste alla dess datakällor vara skrivskyddade och måste returnera SQL_DATA_SOURCE_READ_ONLY. |
| SQL_DATABASE_NAME | 1.0 | En teckensträng med namnet på den aktuella databasen som används, om datakällan definierar ett namngivet objekt med namnet "databas". I ODBC 3.x kan det värde som returneras för denna InfoType också returneras genom att anropa SQLGetConnectAttr med attributet SQL_ATTR_CURRENT_CATALOG . |
| SQL_DATETIME_LITERALS | 3.0 | En SQLUINTEGER-bitmask som räknar upp SQL-92 datetime-literaler som stöds av datakällan. Observera att det här är de datetime-literaler som anges i SQL-92-specifikationen och är separata från de datetime literal escape-satser som definieras av ODBC. Mer information om ODBC datetime literal escape-satser finns i Datum, Tid och TidsstämpelLiteraler. En FIPS-övergångsdrivrutin som är nivåkonform returnerar alltid värdet "1" i bitmasken för bitarna i följande lista. Värdet "0" innebär att SQL-92 datetime-literaler inte stöds. Följande bitmasker används för att avgöra vilka literaler som stöds: 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 | En teckensträng med namnet på DBMS-produkten som används av drivrutinen. |
| SQL_DBMS_VER | 1.0 | En teckensträng som anger vilken version av DBMS-produkten som används av drivrutinen. Versionen är av formatet ##.##.##### där de två första siffrorna är huvudversionen, de två följande siffrorna är delversionen och de sista fyra siffrorna är versionsversionen. Drivrutinen måste återge DBMS-produktversionen i det här formuläret men kan också lägga till den produktspecifika DBMS-versionen. Till exempel "04.01.0000 Rdb 4.1". |
| SQL_DDL_INDEX | 3.0 | Ett SQLUINTEGER-värde som anger stöd för att skapa och ta bort index: SQL_DI_CREATE_INDEX SQL_DI_DROP_INDEX |
| SQL_DEFAULT_TXN_ISOLATION | 1.0 | Ett SQLUINTEGER-värde som anger standardnivån för transaktionsisolering som stöds av drivrutinen eller datakällan, eller noll om datakällan inte stöder transaktioner. Följande termer används för att definiera transaktionsisoleringsnivåer: Smutsig läsning Transaktion 1 ändrar en rad. Transaktion 2 läser den ändrade raden innan transaktion 1 genomför ändringen. Om transaktion 1 återställer ändringen har transaktion 2 läst en rad som anses aldrig ha funnits. Läs som inte kan upprepas Transaktion 1 läser en rad. Transaktion 2 uppdaterar eller tar bort raden och genomför ändringen. Om transaktion 1 försöker läsa om raden får den olika radvärden eller upptäcker att raden har tagits bort. Phantom Transaktion 1 läser en uppsättning rader som uppfyller vissa sökvillkor. Transaktion 2 genererar en eller flera rader (genom antingen infogningar eller uppdateringar) som matchar sökvillkoren. Om transaktion 1 kör instruktionen som läser raderna igen får den en annan uppsättning rader. Om datakällan stöder transaktioner returnerar drivrutinen någon av följande bitmasker: SQL_TXN_READ_UNCOMMITTED = Smutsiga läsningar, icke-repeterbara läsningar och fantomer är möjliga. SQL_TXN_READ_COMMITTED = Smutsiga läsningar är inte möjliga. Icke-repeterbara läsningar och fantomer är möjliga. SQL_TXN_REPEATABLE_READ = Felaktiga läsningar och icke-repeterbara läsningar är inte möjliga. Fantomer är möjliga. SQL_TXN_SERIALIZABLE = Transaktioner är serialiserbara. Serialiserbara transaktioner tillåter inte felaktiga läsningar, icke-repeterbara läsningar eller fantomer. |
| SQL_DESCRIBE_PARAMETER | 3.0 | En teckensträng: "Y" om parametrar kan beskrivas; "N", om inte. En SQL-92 Fullständig nivåkonformant drivrutin returnerar vanligtvis "Y" eftersom den stöder INSTRUKTIONEN BESKRIVA INDATA . Eftersom detta inte direkt anger det underliggande SQL-stödet kan det dock hända att det inte går att beskriva parametrar, även i en SQL-92 Fullständig nivåkonform drivrutin. |
| SQL_DM_VER | 3.0 | En teckensträng med versionen av Driver Manager. Versionen är av formatet ##.##.#####.#####, där: Den första uppsättningen med två siffror är den viktigaste ODBC-versionen, enligt konstanten SQL_SPEC_MAJOR. Den andra uppsättningen med två siffror är den mindre ODBC-versionen, enligt konstanten SQL_SPEC_MINOR. Den tredje uppsättningen med fyra siffror är driverhanterarens huvudversionsnummer. Den sista uppsättningen med fyra siffror är det mindre versionsnumret för Driver Manager. Windows 7 Driver Manager-versionen är 03.80. Windows 8 Driver Manager-versionen är 03.81. |
| SQL_DRIVER_AWARE_POOLING_SUPPORTED | 3,8 | Ett SQLUINTEGER-värde som anger om drivrutinen stöder drivrutinsmedveten pool. (Mer information finns iDriver-Aware anslutningspooler. SQL_DRIVER_AWARE_POOLING_CAPABLE anger att drivrutinen kan stödja en poolmekanism som är medveten om drivrutinen. SQL_DRIVER_AWARE_POOLING_NOT_CAPABLE anger att drivrutinen inte kan stödja en poolmekanism som är medveten om drivrutinen. En drivrutin behöver inte implementera SQL_DRIVER_AWARE_POOLING_SUPPORTED och Drivrutinshanteraren respekterar inte förarens returvärde. |
| SQL_DRIVER_HDBCSQL_DRIVER_HENV | 1.0 | Ett SQLULEN-värde, drivrutinens miljöhandtag eller anslutningshandtag, som bestäms av argumentet InfoType. Dessa informationstyper implementeras enbart av Driver Manager. |
| SQL_DRIVER_HDESC | 3.0 | Ett SQLULEN-värde, drivrutinsbeskrivningens handtag som bestäms av Driver Manager-deskriptorhandtaget, som måste skickas på indata i *InfoValuePtr från programmet. I det här fallet är InfoValuePtr både ett indata- och utdataargument. Referensen för indatabeskrivningen som skickades i *InfoValuePtr måste antingen uttryckligen eller implicit ha allokerats på ConnectionHandle. Programmet bör göra en kopia av Driver Manager-beskrivningshandtaget innan det anropar SQLGetInfo med den här informationstypen för att se till att handtaget inte skrivs över på utdata. Den här informationstypen implementeras enbart av Driver Manager. |
| SQL_DRIVER_HLIB | 2.0 | Ett SQLULEN-värde, hinst från belastningsbiblioteket som returnerades till Drivrutinshanteraren när drivrutins-DLL:en lästes in på ett Microsoft Windows operativsystem eller motsvarande på ett annat operativsystem. Handtaget är endast giltigt för anslutningshandtaget som anges i anropet till SQLGetInfo. Den här informationstypen implementeras enbart av Driver Manager. |
| SQL_DRIVER_HSTMT | 1.0 | Ett SQLULEN-värde, drivrutins-instruktionshandtaget som bestäms av Driver Manager-instruktionshandtaget, som måste skickas på indata i *InfoValuePtr från programmet. I det här fallet är InfoValuePtr både indata och utdataargument. Indatainstruktionshandtaget som skickades i *InfoValuePtr måste ha allokerats på argumentet ConnectionHandle. Programmet bör göra en kopia av Driver Manager-instruktionshandtaget innan det anropar SQLGetInfo med den här informationstypen för att säkerställa att handtaget inte skrivs över vid utdata. Den här informationstypen implementeras enbart av Driver Manager. |
| SQL_DRIVER_NAME | 1.0 | En teckensträng med filnamnet på drivrutinen som används för att komma åt datakällan. |
| SQL_DRIVER_ODBC_VER | 2.0 | En teckensträng med den version av ODBC som drivrutinen stöder. Versionen är av formatet ##.##, där de två första siffrorna är huvudversionen och de följande två siffrorna är delversionen. SQL_SPEC_MAJOR och SQL_SPEC_MINOR definiera huvud- och delversionsnummer. För den version av ODBC som beskrivs i den här handboken är dessa 3 och 0, och drivrutinen bör returnera "03.00". ODBC Driver Manager ändrar inte returvärdet för SQLGetInfo(SQL_DRIVER_ODBC_VER) för att upprätthålla bakåtkompatibilitet för befintliga program. Drivrutinen anger vilket värde som ska returneras. En drivrutin som stöder utökningsbarhet för C-datatyp måste dock returnera 3,8 (eller högre) när ett program anropar SQLSetEnvAttr för att ange SQL_ATTR_ODBC_VERSION till 3.8. Mer information finns i C-datatyper i ODBC. |
| SQL_DRIVER_VER | 1.0 | En teckensträng med drivrutinens version och eventuellt en beskrivning av drivrutinen. Versionen är minst av formatet ##.##.##### där de två första siffrorna är huvudversionen, de följande två siffrorna är delversionen och de fyra sista siffrorna är versionsversionen. |
| SQL_DROP_ASSERTION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP ASSERTION-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_DA_DROP_ASSERTION En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid det här alternativet som stöds. |
| SQL_DROP_CHARACTER_SET | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i instruktionen DROP CHARACTER SET , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_DCS_DROP_CHARACTER_SET En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid det här alternativet som stöds. |
| SQL_DROP_COLLATION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP COLLATION-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_DC_DROP_COLLATION En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid det här alternativet som stöds. |
| SQL_DROP_DOMAIN | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP DOMAIN-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_DD_DROP_DOMAIN SQL_DD_CASCADE SQL_DD_RESTRICT En SQL-92 Intermediate level-conformant-drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_DROP_SCHEMA | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP SCHEMA-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_DS_DROP_SCHEMA SQL_DS_CASCADE SQL_DS_RESTRICT En SQL-92 Intermediate level-conformant-drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_DROP_TABLE | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP TABLE-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_DT_DROP_TABLE SQL_DT_CASCADE SQL_DT_RESTRICT En FIPS-övergångsdrivrutin som uppfyller kraven returnerar alltid alla dessa alternativ som stöds. |
| SQL_DROP_TRANSLATION | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP TRANSLATION-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmask används för att avgöra vilka satser som stöds: SQL_DTR_DROP_TRANSLATION En SQL-92 Fullständig nivåkonform drivrutin returnerar alltid det här alternativet som stöds. |
| SQL_DROP_VIEW | 3.0 | En SQLUINTEGER-bitmask som räknar upp satserna i DROP VIEW-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. Följande bitmasker används för att avgöra vilka satser som stöds: SQL_DV_DROP_VIEW SQL_DV_CASCADE SQL_DV_RESTRICT En FIPS-övergångsdrivrutin som uppfyller kraven returnerar alltid alla dessa alternativ som stöds. |
| SQL_DYNAMIC_CURSOR_ATTRIBUTES1 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en dynamisk markör som stöds av drivrutinen. Den här bitmasken innehåller den första delmängden av attribut. för den andra delmängden, se SQL_DYNAMIC_CURSOR_ATTRIBUTES2. Följande bitmasker används för att avgöra vilka attribut som stöds: SQL_CA1_NEXT = Ett FetchOrientation-argument för SQL_FETCH_NEXT stöds i ett anrop till SQLFetchScroll när markören är en dynamisk markör. SQL_CA1_ABSOLUTE = FetchOrientation-argument för SQL_FETCH_FIRST, SQL_FETCH_LAST och SQL_FETCH_ABSOLUTE stöds i ett anrop till SQLFetchScroll när markören är en dynamisk markör. (Raduppsättningen som hämtas är oberoende av den aktuella markörens position.) SQL_CA1_RELATIVE = FetchOrientation-argument för SQL_FETCH_PRIOR och SQL_FETCH_RELATIVE stöds i ett anrop till SQLFetchScroll när markören är en dynamisk markör. (Raduppsättningen som hämtas beror på den aktuella markörens position. Observera att detta är avskilt från SQL_FETCH_NEXT eftersom endast SQL_FETCH_NEXT stöds i en framåtriktad markör.) SQL_CA1_BOOKMARK = Ett FetchOrientation-argument för SQL_FETCH_BOOKMARK stöds i ett anrop till SQLFetchScroll när markören är en dynamisk markör. SQL_CA1_LOCK_EXCLUSIVE = Ett LockType-argument för SQL_LOCK_EXCLUSIVE stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_LOCK_NO_CHANGE = Ett LockType-argument för SQL_LOCK_NO_CHANGE stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_LOCK_UNLOCK = Ett LockType-argument för SQL_LOCK_UNLOCK stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_POS_POSITION = Ett åtgärdsargument för SQL_POSITION stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_POS_UPDATE = Ett åtgärdsargument för SQL_UPDATE stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_POS_DELETE = Ett åtgärdsargument för SQL_DELETE stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_POS_REFRESH = Ett åtgärdsargument för SQL_REFRESH stöds i ett anrop till SQLSetPos när markören är en dynamisk markör. SQL_CA1_POSITIONED_UPDATE = En UPPDATERING DÄR AKTUELL SQL-instruktion stöds när markören är en dynamisk markör. (En SQL-92 Entry level-conformant-drivrutin returnerar alltid det här alternativet som stöds.) SQL_CA1_POSITIONED_DELETE = EN DELETE WHERE CURRENT OF SQL-instruktion stöds när markören är en dynamisk markör. (En SQL-92 Entry level-conformant-drivrutin returnerar alltid det här alternativet som stöds.) SQL_CA1_SELECT_FOR_UPDATE = SQL-instruktionen SELECT FOR UPDATE stöds när markören är en dynamisk markör. (En SQL-92 Entry level-conformant-drivrutin returnerar alltid det här alternativet som stöds.) SQL_CA1_BULK_ADD = Ett åtgärdsargument för SQL_ADD stöds i ett anrop till SQLBulkOperations när markören är en dynamisk markör. SQL_CA1_BULK_UPDATE_BY_BOOKMARK = Ett åtgärdsargument för SQL_UPDATE_BY_BOOKMARK stöds i ett anrop till SQLBulkOperations när markören är en dynamisk markör. SQL_CA1_BULK_DELETE_BY_BOOKMARK = Ett åtgärdsargument för SQL_DELETE_BY_BOOKMARK stöds i ett anrop till SQLBulkOperations när markören är en dynamisk markör. SQL_CA1_BULK_FETCH_BY_BOOKMARK = Ett åtgärdsargument för SQL_FETCH_BY_BOOKMARK stöds i ett anrop till SQLBulkOperations när markören är en dynamisk markör. En SQL-92 Intermediate level-conformant-drivrutin returnerar vanligtvis SQL_CA1_NEXT, SQL_CA1_ABSOLUTE och SQL_CA1_RELATIVE alternativ som stöds, eftersom den stöder rullningsbara markörer via den inbäddade SQL FETCH-instruktionen. Eftersom detta inte direkt avgör det underliggande SQL-stödet kan det dock hända att rullningsbara markörer inte stöds, inte ens för en sql-92-drivrutin på mellannivå. |
| SQL_DYNAMIC_CURSOR_ATTRIBUTES2 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en dynamisk markör som stöds av drivrutinen. Den här bitmasken innehåller den andra delmängden av attribut. För den första delmängden, se SQL_DYNAMIC_CURSOR_ATTRIBUTES1. Följande bitmasker används för att avgöra vilka attribut som stöds: SQL_CA2_READ_ONLY_CONCURRENCY = En skrivskyddad dynamisk markör, där inga uppdateringar tillåts, stöds. (Attributet SQL_ATTR_CONCURRENCY-instruktion kan vara SQL_CONCUR_READ_ONLY för en dynamisk markör). SQL_CA2_LOCK_CONCURRENCY = En dynamisk markör som använder den lägsta låsnivån för att se till att raden kan uppdateras stöds. (Attributet SQL_ATTR_CONCURRENCY-instruktion kan vara SQL_CONCUR_LOCK för en dynamisk markör.) Dessa lås måste vara konsekventa med den transaktionsisoleringsnivå som anges av SQL_ATTR_TXN_ISOLATION anslutningsattribut. SQL_CA2_OPT_ROWVER_CONCURRENCY = En dynamisk markör som använder optimistisk samtidighetskontroll som jämför radversioner stöds. (Attributet SQL_ATTR_CONCURRENCY-instruktion kan vara SQL_CONCUR_ROWVER för en dynamisk markör.) SQL_CA2_OPT_VALUES_CONCURRENCY = En dynamisk markör som använder optimistisk samtidighetskontroll som jämför värden stöds. (Attributet SQL_ATTR_CONCURRENCY-instruktion kan vara SQL_CONCUR_VALUES för en dynamisk markör.) SQL_CA2_SENSITIVITY_ADDITIONS = Tillagda rader är synliga för en dynamisk markör. kan markören rulla till dessa rader. (Där dessa rader läggs till i markören är drivrutinsberoende.) SQL_CA2_SENSITIVITY_DELETIONS = Borttagna rader är inte längre tillgängliga för en dynamisk markör och lämnar inte ett "hål" i resultatuppsättningen. När den dynamiska markören rullar från en borttagen rad kan den inte återgå till den raden. SQL_CA2_SENSITIVITY_UPDATES = Uppdateringar av rader är synliga för en dynamisk markör. Om den dynamiska markören rullar från och återgår till en uppdaterad rad är data som returneras av markören uppdaterade data, inte de ursprungliga data. SQL_CA2_MAX_ROWS_SELECT = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar SELECT-instruktioner när markören är en dynamisk markör. SQL_CA2_MAX_ROWS_INSERT = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar INSERT-instruktioner när markören är en dynamisk markör. SQL_CA2_MAX_ROWS_DELETE = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar DELETE-instruktioner när markören är en dynamisk markör. SQL_CA2_MAX_ROWS_UPDATE = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar UPDATE-instruktioner när markören är en dynamisk markör. SQL_CA2_MAX_ROWS_CATALOG = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar KATALOGresultatuppsättningar när markören är en dynamisk markör. SQL_CA2_MAX_ROWS_AFFECTS_ALL = Attributet SQL_ATTR_MAX_ROWS-instruktion påverkar SELECT-, INSERT-, DELETE- och UPDATE-instruktioner och KATALOGresultatuppsättningar när markören är en dynamisk markör. SQL_CA2_CRC_EXACT = Det exakta radantalet är tillgängligt i diagnostikfältet SQL_DIAG_CURSOR_ROW_COUNT när markören är en dynamisk markör. SQL_CA2_CRC_APPROXIMATE = Ett ungefärligt antal rader är tillgängligt i SQL_DIAG_CURSOR_ROW_COUNT diagnostikfält när markören är en dynamisk markör. SQL_CA2_SIMULATE_NON_UNIQUE = Drivrutinen garanterar inte att simulerade positionerade uppdaterings- eller borttagningsinstruktioner endast påverkar en rad när markören är en dynamisk markör. det är programmets ansvar att garantera detta. (Om en instruktion påverkar mer än en rad returnerar SQLExecute eller SQLExecDirect SQLSTATE 01001 [Marköråtgärdskonflikt].) För att ange det här beteendet anropar programmet SQLSetStmtAttr med attributet SQL_ATTR_SIMULATE_CURSOR inställt på SQL_SC_NON_UNIQUE. SQL_CA2_SIMULATE_TRY_UNIQUE = Drivrutinen försöker garantera att simulerade positionerade uppdaterings- eller borttagningsinstruktioner endast påverkar en rad när markören är en dynamisk markör. Drivrutinen kör alltid sådana instruktioner, även om de kan påverka mer än en rad, till exempel när det inte finns någon unik nyckel. (Om en instruktion påverkar mer än en rad returnerar SQLExecute eller SQLExecDirect SQLSTATE 01001 [Marköråtgärdskonflikt].) För att ange det här beteendet anropar programmet SQLSetStmtAttr med attributet SQL_ATTR_SIMULATE_CURSOR inställt på SQL_SC_TRY_UNIQUE. SQL_CA2_SIMULATE_UNIQUE = Drivrutinen garanterar att simulerade positionerade uppdaterings- eller borttagningsuttryck endast påverkar en rad när markören är en dynamisk markör. Om drivrutinen inte kan garantera detta för en viss instruktion returnerar SQLSTATE 01001 (marköråtgärdskonflikt) SQLExecDirect eller SQLPrepare . För att ange det här beteendet anropar programmet SQLSetStmtAttr med attributet SQL_ATTR_SIMULATE_CURSOR inställt på SQL_SC_UNIQUE. |
| SQL_EXPRESSIONS_IN_ORDERBY | 1.0 | En teckensträng: "Y" om datakällan stöder uttryck i LISTAN ORDER BY ; "N" om det inte gör det. |
| SQL_FILE_USAGE | 2.0 | Ett SQLUSMALLINT-värde som anger hur en drivrutin på en enda nivå behandlar filer direkt i en datakälla: SQL_FILE_NOT_SUPPORTED = Drivrutinen är inte en drivrutin på en enda nivå. En ORACLE-drivrutin är till exempel en drivrutin med två nivåer. SQL_FILE_TABLE = En drivrutin på en nivå behandlar filer i en datakälla som tabeller. En Xbase-drivrutin behandlar till exempel varje Xbase-fil som en tabell. SQL_FILE_CATALOG = En drivrutin på en enda nivå behandlar filer i en datakälla som en katalog. En Microsoft Access-drivrutin behandlar till exempel varje Microsoft Access fil som en fullständig databas. Ett program kan använda detta för att avgöra hur användarna ska välja data. Xbase-användare tänker till exempel ofta på data som lagrade i filer, medan ORACLE och Microsoft Access användare i allmänhet ser data som lagrade i tabeller. När en användare väljer en Xbase-datakälla kan programmet visa den Windows File Open gemensam dialogruta. När användaren väljer en Microsoft Access- eller ORACLE-datakälla kan programmet visa en anpassad Välj tabell dialogruta. |
| SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en framåtriktad markör som stöds av drivrutinen. Den här bitmasken innehåller den första delmängden av attribut. för den andra delmängden, se SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (och ersätt "framåtriktad markör" för "dynamisk markör" i beskrivningarna). |
| SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en framåtriktad markör som stöds av drivrutinen. Den här bitmasken innehåller den andra delmängden av attribut. För den första delmängden, se SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES2 (och ersätt "endast framåtriktad markör" för "dynamisk markör" i beskrivningarna). |
| SQL_GETDATA_EXTENSIONS | 2.0 | En SQLUINTEGER-bitmask som räknar upp tillägg till SQLGetData. Följande bitmasker används tillsammans med flaggan för att avgöra vilka vanliga tillägg som drivrutinen stöder för SQLGetData: SQL_GD_ANY_COLUMN = SQLGetData kan anropas för valfri obunden kolumn, inklusive de före den sista bundna kolumnen. Observera att kolumnerna måste anropas i ordning efter stigande kolumnnummer om inte SQL_GD_ANY_ORDER också returneras. SQL_GD_ANY_ORDER = SQLGetData kan anropas för obundna kolumner i valfri ordning. Observera att SQLGetData endast kan anropas för kolumner efter den sista bundna kolumnen om inte SQL_GD_ANY_COLUMN också returneras. SQL_GD_BLOCK = SQLGetData kan anropas för en obunden kolumn i en rad i ett block (där raduppsättningens storlek är större än 1) av data efter placering till den raden med SQLSetPos. SQL_GD_BOUND = SQLGetData kan anropas för bundna kolumner utöver obundna kolumner. En drivrutin kan inte returnera det här värdet om den inte också returnerar SQL_GD_ANY_COLUMN. SQL_GD_OUTPUT_PARAMS = SQLGetData kan anropas för att returnera utdataparametervärden. Mer information finns i Hämta utdataparametrar med SQLGetData. SQLGetData krävs för att endast returnera data från obundna kolumner som inträffar efter den sista bundna kolumnen, anropas i ordning för att öka kolumnnumret och finns inte på en rad i ett block med rader. Om en drivrutin stöder bokmärken (antingen fast längd eller variabel längd) måste den ha stöd för att anropa SQLGetData i kolumn 0. Det här stödet krävs oavsett vad drivrutinen returnerar för ett anrop till SQLGetInfo med SQL_GETDATA_EXTENSIONS InfoType. |
| SQL_GROUP_BY | 2.0 | Ett SQLUSMALLINT-värde som anger relationen mellan kolumnerna i GROUP BY-satsen och de icke-aggregerade kolumnerna i urvalslistan: SQL_GB_COLLATE = En COLLATE-sats kan anges i slutet av varje grupperingskolumn. (ODBC 3.0) SQL_GB_NOT_SUPPORTED = GROUP BY-satser stöds inte. (ODBC 2.0) SQL_GB_GROUP_BY_EQUALS_SELECT = GROUP BY-satsen måste innehålla alla icke-aggregerade kolumner i urvalslistan. Den får inte innehålla några andra kolumner. Till exempel SELECT DEPT, MAX(SALARY) FROM EMPLOYEE GROUP BY DEPT. (ODBC 2.0) SQL_GB_GROUP_BY_CONTAINS_SELECT = GROUP BY-satsen måste innehålla alla icke-aggregerade kolumner i urvalslistan. Den kan innehålla kolumner som inte finns i urvalslistan. Till exempel SELECT DEPT, MAX(SALARY) FROM EMPLOYEE GROUP BY DEPT, AGE. (ODBC 2.0) SQL_GB_NO_RELATION = Kolumnerna i GROUP BY-satsen och urvalslistan är inte relaterade. Innebörden av icke-grupperade, icke-aggregerade kolumner i urvalslistan är datakällans beroende. Till exempel SELECT DEPT, SALARY FROM EMPLOYEE GROUP BY DEPT, AGE. (ODBC 2.0) En SQL-92 Entry level-conformant-drivrutin returnerar alltid alternativet SQL_GB_GROUP_BY_EQUALS_SELECT som stöds. En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alternativet SQL_GB_COLLATE som stöds. Om inget av alternativen stöds stöds inte GROUP BY-satsen av datakällan. |
| SQL_IDENTIFIER_CASE | 1.0 | Ett SQLUSMALLINT-värde enligt följande: SQL_IC_UPPER = Identifierare i SQL är inte skiftlägeskänsliga och lagras i versaler i systemkatalogen. SQL_IC_LOWER = Identifierare i SQL är inte skiftlägeskänsliga och lagras i gemener i systemkatalogen. SQL_IC_SENSITIVE = Identifierare i SQL är skiftlägeskänsliga och lagras i blandat fall i systemkatalogen. SQL_IC_MIXED = Identifierare i SQL är inte skiftlägeskänsliga och lagras i blandade fall i systemkatalogen. Eftersom identifierare i SQL-92 aldrig är skiftlägeskänsliga returnerar en drivrutin som strikt överensstämmer med SQL-92 (vilken nivå som helst) aldrig alternativet SQL_IC_SENSITIVE som stöds. |
| SQL_IDENTIFIER_QUOTE_CHAR | 1.0 | Teckensträngen som används som start- och slutavgränsare för en citerad (avgränsad) identifierare i SQL-uttryck. (Identifierare som skickas som argument till ODBC-funktioner behöver inte anges.) Om datakällan inte stöder citerade identifierare returneras ett tomt värde. Den här teckensträngen kan också användas för att citera katalogfunktionsargument när anslutningsattributet SQL_ATTR_METADATA_ID är inställt på SQL_TRUE. Eftersom identifierarens citattecken i SQL-92 är det dubbla citattecknet ("), returnerar en drivrutin som strikt överensstämmer med SQL-92 alltid det dubbla citattecknet. |
| SQL_INDEX_KEYWORDS | 3.0 | En SQLUINTEGER-bitmask som räknar upp nyckelord i CREATE INDEX-instruktionen som stöds av drivrutinen: SQL_IK_NONE = Inget av nyckelorden stöds. SQL_IK_ASC = ASC-nyckelord stöds. SQL_IK_DESC = DESC-nyckelord stöds. SQL_IK_ALL = Alla nyckelord stöds. För att se om CREATE INDEX-instruktionen stöds anropar ett program SQLGetInfo med informationstypen SQL_DLL_INDEX. |
| SQL_INFO_SCHEMA_VIEWS | 3.0 | En SQLUINTEGER-bitmask som räknar upp vyerna i INFORMATION_SCHEMA som stöds av drivrutinen. Vyerna i och innehållet i INFORMATION_SCHEMA definieras i SQL-92. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka vyer som stöds: SQL_ISV_ASSERTIONS = Identifierar katalogens intyg som ägs av en viss användare. (Fullständig nivå) SQL_ISV_CHARACTER_SETS = Identifierar katalogens teckenuppsättningar som kan nås av en viss användare. (Mellannivå) SQL_ISV_CHECK_CONSTRAINTS = Identifierar de CHECK-begränsningar som ägs av en viss användare. (Mellannivå) SQL_ISV_COLLATIONS = Identifierar teckensortering för katalogen som kan nås av en viss användare. (Fullständig nivå) SQL_ISV_COLUMN_DOMAIN_USAGE = Identifierar kolumner för katalogen som är beroende av domäner som definierats i katalogen och ägs av en viss användare. (Mellannivå) SQL_ISV_COLUMN_PRIVILEGES = Identifierar behörigheter för kolumner i beständiga tabeller som är tillgängliga för eller beviljas av en viss användare. (FIPS-övergångsnivå) SQL_ISV_COLUMNS = Identifierar kolumnerna i beständiga tabeller som kan nås av en viss användare. (FIPS-övergångsnivå) SQL_ISV_CONSTRAINT_COLUMN_USAGE = Liknar CONSTRAINT_TABLE_USAGE vy identifieras kolumner för de olika begränsningar som ägs av en viss användare. (Mellannivå) SQL_ISV_CONSTRAINT_TABLE_USAGE = Identifierar de tabeller som används av begränsningar (referent, unik och försäkran) och ägs av en viss användare. (Mellannivå) SQL_ISV_DOMAIN_CONSTRAINTS = Identifierar domänbegränsningarna (för domänerna i katalogen) som kan nås av en viss användare. (Mellannivå) SQL_ISV_DOMAINS = Identifierar de domäner som definierats i en katalog som användaren kan komma åt. (Mellannivå) SQL_ISV_KEY_COLUMN_USAGE = Identifierar kolumner som definierats i katalogen som är begränsade som nycklar av en viss användare. (Mellannivå) SQL_ISV_REFERENTIAL_CONSTRAINTS = Identifierar de referensbegränsningar som ägs av en viss användare. (Mellannivå) SQL_ISV_SCHEMATA = Identifierar de scheman som ägs av en viss användare. (Mellannivå) SQL_ISV_SQL_LANGUAGES = Identifierar SQL-överensstämmelsenivåer, alternativ och dialekter som stöds av SQL-implementeringen. (Mellannivå) SQL_ISV_TABLE_CONSTRAINTS = Identifierar tabellbegränsningar som ägs av en viss användare. (Mellannivå) SQL_ISV_TABLE_PRIVILEGES = Identifierar behörigheter för beständiga tabeller som är tillgängliga för eller beviljas av en viss användare. (FIPS-övergångsnivå) SQL_ISV_TABLES = Identifierar de beständiga tabeller som definierats i en katalog som kan nås av en viss användare. (FIPS-övergångsnivå) SQL_ISV_TRANSLATIONS = Identifierar teckenöversättningar för katalogen som kan nås av en viss användare. (Fullständig nivå) SQL_ISV_USAGE_PRIVILEGES = Identifierar ANVÄNDNINGsbehörigheter för katalogobjekt som är tillgängliga för eller ägs av en viss användare. (FIPS-övergångsnivå) SQL_ISV_VIEW_COLUMN_USAGE = Identifierar de kolumner som katalogens vyer som ägs av en viss användare är beroende av. (Mellannivå) SQL_ISV_VIEW_TABLE_USAGE = Identifierar de tabeller som katalogens vyer som ägs av en viss användare är beroende av. (Mellannivå) SQL_ISV_VIEWS = Identifierar de visade tabeller som definierats i den här katalogen som kan nås av en viss användare. (FIPS-övergångsnivå) |
| SQL_INSERT_STATEMENT | 3.0 | En SQLUINTEGER-bitmask som anger stöd för INSERT-instruktioner : SQL_IS_INSERT_LITERALS SQL_IS_INSERT_SEARCHED SQL_IS_SELECT_INTO En SQL-92 Entry level-conformant-drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_INTEGRITY | 1.0 | En teckensträng: "Y" om datakällan stöder funktionen för integritetsförbättring. "N" om det inte gör det. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_ODBC_SQL_OPT_IEF . |
| SQL_KEYSET_CURSOR_ATTRIBUTES1 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en tangentuppsättningsmarkör som stöds av drivrutinen. Den här bitmasken innehåller den första delmängden av attribut. för den andra delmängden, se SQL_KEYSET_CURSOR_ATTRIBUTES2. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (och ersätt "keyset-driven markör" för "dynamisk markör" i beskrivningarna). En SQL-92 Intermediate level-conformant-drivrutin returnerar vanligtvis SQL_CA1_NEXT, SQL_CA1_ABSOLUTE och SQL_CA1_RELATIVE alternativ som stöds, eftersom drivrutinen stöder rullningsbara markörer via den inbäddade SQL FETCH-instruktionen. Eftersom detta inte direkt avgör det underliggande SQL-stödet kan det dock hända att rullningsbara markörer inte stöds, inte ens för en sql-92-drivrutin på mellannivå. |
| SQL_KEYSET_CURSOR_ATTRIBUTES2 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en tangentuppsättningsmarkör som stöds av drivrutinen. Den här bitmasken innehåller den andra delmängden av attribut. för den första delmängden, se SQL_KEYSET_CURSOR_ATTRIBUTES1. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (och ersätt "keyset-driven markör" för "dynamisk markör" i beskrivningarna). |
| SQL_KEYWORDS | 2.0 | En teckensträng som innehåller en kommaavgränsad lista över alla datakällans specifika nyckelord. Den här listan innehåller inte nyckelord som är specifika för ODBC eller nyckelord som används av både datakällan och ODBC. Den här listan representerar alla reserverade nyckelord. interoperabla program bör inte använda dessa ord i objektnamn. En lista över ODBC-nyckelord finns i Reserverade nyckelord i bilaga C: SQL-grammatik. Värdet #define SQL_ODBC_KEYWORDS innehåller en kommaavgränsad lista med ODBC-nyckelord. |
| SQL_LIKE_ESCAPE_CLAUSE | 2.0 | En teckensträng: "Y" om datakällan stöder ett escape-tecken för procenttecknet (%) och understreckstecknet (_) i en LIKE-predikat och drivrutinen stöder ODBC-syntaxen för att definiera ett LIKE-predikatutrymningstecken . "N" annars. |
| SQL_MAX_ASYNC_CONCURRENT_STATEMENTS | 3.0 | Ett SQLUINTEGER-värde som anger det maximala antalet aktiva samtidiga instruktioner i asynkront läge som drivrutinen kan stödja på en viss anslutning. Om det inte finns någon specifik gräns eller om gränsen är okänd är det här värdet noll. |
| SQL_MAX_BINARY_LITERAL_LEN | 2.0 | Ett SQLUINTEGER-värde som anger maximal längd (antal hexadecimala tecken, exklusive literalprefixet och suffixet som returneras av SQLGetTypeInfo) för en binär literal i en SQL-instruktion. Till exempel har den binära literalen 0xFFAA en längd på 4. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. |
| SQL_MAX_CATALOG_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett katalognamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. En FIPS-drivrutin med fullständig nivåkonform returnerar minst 128. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_MAX_QUALIFIER_NAME_LEN . |
| SQL_MAX_CHAR_LITERAL_LEN | 2.0 | Ett SQLUINTEGER-värde som anger den maximala längden (antal tecken, exklusive literalprefixet och suffixet som returneras av SQLGetTypeInfo) för en teckenliteral i en SQL-instruktion. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. |
| SQL_MAX_COLUMN_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett kolumnnamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 18. En FIPS Intermediate level-conformant-drivrutin returnerar minst 128. |
| SQL_MAX_COLUMNS_IN_GROUP_BY | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet kolumner som tillåts i en GROUP BY-sats . Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant drivrutin returnerar minst 6. En FIPS Intermediate level-conformant drivrutin returnerar minst 15. |
| SQL_MAX_COLUMNS_IN_INDEX | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet kolumner som tillåts i ett index. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. |
| SQL_MAX_COLUMNS_IN_ORDER_BY | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet kolumner som tillåts i en ORDER BY-sats . Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant drivrutin returnerar minst 6. En FIPS Intermediate level-conformant drivrutin returnerar minst 15. |
| SQL_MAX_COLUMNS_IN_SELECT | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet kolumner som tillåts i en urvalslista. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 100. En FIPS Intermediate level-conformant drivrutin returnerar minst 250. |
| SQL_MAX_COLUMNS_IN_TABLE | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet kolumner som tillåts i en tabell. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 100. En FIPS Intermediate level-conformant drivrutin returnerar minst 250. |
| SQL_MAX_CONCURRENT_ACTIVITIES | 1.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet aktiva instruktioner som drivrutinen kan stödja för en anslutning. En instruktion definieras som aktiv om den har väntande resultat, med termen "resultat" som betyder rader från en SELECT-åtgärd eller rader som påverkas av en INSERT-, UPDATE- eller DELETE-åtgärd (till exempel ett radantal) eller om den är i ett NEED_DATA tillstånd. Det här värdet kan återspegla en begränsning som införts av drivrutinen eller datakällan. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_ACTIVE_STATEMENTS . |
| SQL_MAX_CURSOR_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett markörnamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 18. En FIPS Intermediate level-conformant-drivrutin returnerar minst 128. |
| SQL_MAX_DRIVER_CONNECTIONS | 1.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet aktiva anslutningar som drivrutinen kan stödja för en miljö. Det här värdet kan återspegla en begränsning som införts av drivrutinen eller datakällan. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_ACTIVE_CONNECTIONS . |
| SQL_MAX_IDENTIFIER_LEN | 3.0 | En SQLUSMALLINT som anger den maximala storleken på tecken som datakällan stöder för användardefinierade namn. En FIPS Entry level-conformant-drivrutin returnerar minst 18. En FIPS Intermediate level-conformant-drivrutin returnerar minst 128. |
| SQL_MAX_INDEX_SIZE | 2.0 | Ett SQLUINTEGER-värde som anger det maximala antalet byte som tillåts i de kombinerade fälten i ett index. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. |
| SQL_MAX_PROCEDURE_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett procedurnamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. |
| SQL_MAX_ROW_SIZE | 2.0 | Ett SQLUINTEGER-värde som anger den maximala längden på en enskild rad i en tabell. Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 2 000. En FIPS Intermediate-nivåkonformant drivrutin returnerar minst 8 000. |
| SQL_MAX_ROW_SIZE_INCLUDES_LONG | 3.0 | En teckensträng: "Y" om den maximala radstorleken som returneras för den SQL_MAX_ROW_SIZE informationstypen innehåller längden på alla SQL_LONGVARCHAR och SQL_LONGVARBINARY kolumner i raden. "N" annars. |
| SQL_MAX_SCHEMA_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett schemanamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 18. En FIPS Intermediate level-conformant-drivrutin returnerar minst 128. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_MAX_OWNER_NAME_LEN . |
| SQL_MAX_STATEMENT_LEN | 2.0 | Ett SQLUINTEGER-värde som anger den maximala längden (antal tecken, inklusive tomt utrymme) för en SQL-instruktion. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. |
| SQL_MAX_TABLE_NAME_LEN | 1.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett tabellnamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 18. En FIPS Intermediate level-conformant-drivrutin returnerar minst 128. |
| SQL_MAX_TABLES_IN_SELECT | 2.0 | Ett SQLUSMALLINT-värde som anger det maximala antalet tabeller som tillåts i FROM-satsen i en SELECT-instruktion . Om det inte finns någon angiven gräns eller om gränsen är okänd anges det här värdet till noll. En FIPS Entry level-conformant-drivrutin returnerar minst 15. En FIPS Intermediate level-conformant drivrutin returnerar minst 50. |
| SQL_MAX_USER_NAME_LEN | 2.0 | Ett SQLUSMALLINT-värde som anger den maximala längden på ett användarnamn i datakällan. Om det inte finns någon maximal längd eller om längden är okänd anges det här värdet till noll. |
| SQL_MULT_RESULT_SETS | 1.0 | En teckensträng: "Y" om datakällan stöder flera resultatuppsättningar, "N" om den inte gör det. Mer information om flera resultatuppsättningar finns i Flera resultat. |
| SQL_MULTIPLE_ACTIVE_TXN | 1.0 | En teckensträng: "Y" om drivrutinen stöder fler än en aktiv transaktion samtidigt, "N" om endast en transaktion kan vara aktiv när som helst. Den information som returneras för den här informationstypen gäller inte för distribuerade transaktioner. |
| SQL_NEED_LONG_DATA_LEN | 2.0 | En teckensträng: "Y" om datakällan behöver längden på ett långt datavärde (datatypen är SQL_LONGVARCHAR, SQL_LONGVARBINARY eller en lång datakällaspecifik datatyp) innan det värdet skickas till datakällan, "N" om det inte gör det. Mer information finns i SQLBindParameter Function och SQLSetPos Function. |
| SQL_NON_NULLABLE_COLUMNS | 1.0 | Ett SQLUSMALLINT-värde som anger om datakällan stöder NOT NULL i kolumner: SQL_NNC_NULL = Alla kolumner måste vara nullbara. SQL_NNC_NON_NULL = Kolumner kan inte vara null. (Datakällan stöder kolumnvillkoret NOT NULL i CREATE TABLE-uttryck .) En SQL-92 Entry level-conformant-drivrutin returnerar SQL_NNC_NON_NULL. |
| SQL_NULL_COLLATION | 2.0 | Ett SQLUSMALLINT-värde som anger var NULL:er sorteras i en resultatuppsättning: SQL_NC_END = NULLs sorteras i slutet av resultatuppsättningen, oavsett ASC- eller DESC-nyckelord. SQL_NC_HIGH = NULL:er sorteras i den högsta änden av resultatuppsättningen, beroende på nyckelorden ASC eller DESC. SQL_NC_LOW = NULLs sorteras i den låga änden av resultatuppsättningen, beroende på ASC- eller DESC-nyckelorden. SQL_NC_START = NULLLs sorteras i början av resultatuppsättningen, oavsett ASC- eller DESC-nyckelord. |
| SQL_NUMERIC_FUNCTIONS | 1.0 | Obs! Informationstypen introducerades i ODBC 1.0. varje bitmask är märkt med den version där den introducerades. En SQLUINTEGER-bitmask som räknar upp de skalära numeriska funktioner som stöds av drivrutinen och tillhörande datakälla. Följande bitmasker används för att avgöra vilka numeriska funktioner som stöds: 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 | Ett SQLUINTEGER-värde som anger nivån för ODBC 3*.x*-gränssnittet som drivrutinen uppfyller. SQL_OIC_CORE: Den lägsta nivå som alla ODBC-drivrutiner förväntas uppfylla. Den här nivån innehåller grundläggande gränssnittselement som anslutningsfunktioner, funktioner för att förbereda och köra en SQL-instruktion, grundläggande metadatafunktioner för resultatuppsättningar, grundläggande katalogfunktioner och så vidare. SQL_OIC_LEVEL1: En nivå som omfattar standardernas efterlevnadsnivå, plus rullningsbara markörer, bokmärken, placerade uppdateringar och borttagningar och så vidare. SQL_OIC_LEVEL2: En nivå inklusive standardefterlevnadsnivå på nivå 1, plus avancerade funktioner som känsliga markörer. uppdatera, ta bort och uppdatera efter bokmärken. stöd för lagrad procedur. katalogfunktioner för primära och externa nycklar. stöd för flera kataloger. och så vidare. Mer information finns i Gränssnittsefterlevnadsnivåer. |
| SQL_ODBC_VER | 1.0 | En teckensträng med den version av ODBC som Driver Manager överensstämmer med. Versionen är av formatet ##.##.00000, där de två första siffrorna är huvudversionen och de följande två siffrorna är delversionen. Detta implementeras endast i Driver Manager. |
| SQL_OJ_CAPABILITIES | 2.01 | En SQLUINTEGER-bitmask som räknar upp de typer av yttre kopplingar som stöds av drivrutinen och datakällan. Följande bitmasker används för att avgöra vilka typer som stöds: SQL_OJ_LEFT = Vänster yttre kopplingar stöds. SQL_OJ_RIGHT = Höger yttre kopplingar stöds. SQL_OJ_FULL = Fullständiga yttre kopplingar stöds. SQL_OJ_NESTED = Kapslade yttre kopplingar stöds. SQL_OJ_NOT_ORDERED = Kolumnnamnen i ON-satsen för den yttre kopplingen behöver inte vara i samma ordning som deras respektive tabellnamn i OUTER JOIN-satsen . SQL_OJ_INNER = Den inre tabellen (den högra tabellen i en vänster yttre koppling eller den vänstra tabellen i en höger yttre koppling) kan också användas i en inre koppling. Detta gäller inte för fullständiga yttre kopplingar, som inte har någon inre tabell. SQL_OJ_ALL_COMPARISON_OPS = Jämförelseoperatorn i ON-satsen kan vara någon av ODBC-jämförelseoperatorerna. Om den här biten inte har angetts kan endast jämförelseoperatorn (=) användas i yttre kopplingar. Om inget av dessa alternativ returneras som stöd stöds stöds ingen yttre kopplingssats. Information om stöd för relationskopplingsoperatorer i en SELECT-instruktion, enligt definitionen i SQL-92, finns i SQL_SQL92_RELATIONAL_JOIN_OPERATORS. |
| SQL_ORDER_BY_COLUMNS_IN_SELECT | 2.0 | En teckensträng: "Y" om kolumnerna i ORDER BY-satsen måste finnas i urvalslistan. annars "N". |
| SQL_PARAM_ARRAY_ROW_COUNTS | 3.0 | En SQLUINTEGER som räknar upp drivrutinsegenskaperna när det gäller tillgängligheten för radantal i en parameteriserad körning. Har följande värden: SQL_PARC_BATCH = Antal enskilda rader är tillgängliga för varje uppsättning parametrar. Detta motsvarar konceptuellt den drivrutin som genererar en batch SQL-instruktioner, en för varje parameter som anges i matrisen. Utökad felinformation kan hämtas med hjälp av fältet SQL_PARAM_STATUS_PTR beskrivning. SQL_PARC_NO_BATCH = Det finns bara ett radantal tillgängligt, vilket är det kumulativa radantal som uppstår vid körningen av -instruktionen för hela matrisen med parametrar. Detta motsvarar konceptuellt att behandla -instruktionen tillsammans med den fullständiga parametermatrisen som en atomisk enhet. Fel hanteras på samma sätt som om en instruktion kördes. |
| SQL_PARAM_ARRAY_SELECTS | 3.0 | En SQLUINTEGER som räknar upp drivrutinsegenskaperna för tillgängligheten för resultatuppsättningar i en parameteriserad körning. Har följande värden: SQL_PAS_BATCH = Det finns en tillgänglig resultatuppsättning per uppsättning parametrar. Detta motsvarar konceptuellt den drivrutin som genererar en batch SQL-instruktioner, en för varje parameter som anges i matrisen. SQL_PAS_NO_BATCH = Det finns bara en tillgänglig resultatuppsättning som representerar den kumulativa resultatuppsättningen som härrör från körningen av -instruktionen för den fullständiga matrisen med parametrar. Detta motsvarar konceptuellt att behandla -instruktionen tillsammans med den fullständiga parametermatrisen som en atomisk enhet. SQL_PAS_NO_SELECT = En drivrutin tillåter inte att en resultatuppsättningsgenererande instruktion körs med en matris med parametrar. |
| SQL_POS_OPERATIONS | 2.0 | En SQLINTEGER-bitmask som räknar upp supportåtgärderna i SQLSetPos. Följande bitmasker används tillsammans med flaggan för att avgöra vilka alternativ som stöds. 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 | En teckensträng med datakällans leverantörsnamn för en procedur. till exempel "databasprocedur", "lagrad procedur", "procedur", "paket" eller "lagrad fråga". |
| SQL_PROCEDURES | 1.0 | En teckensträng: "Y" om datakällan stöder procedurer och drivrutinen stöder ODBC-procedurens anropssyntax. "N" annars. |
| SQL_QUOTED_IDENTIFIER_CASE | 2.0 | Ett SQLUSMALLINT-värde enligt följande: SQL_IC_UPPER = Citerade identifierare i SQL är inte skiftlägeskänsliga och lagras i versaler i systemkatalogen. SQL_IC_LOWER = Citerade identifierare i SQL är inte skiftlägeskänsliga och lagras i gemener i systemkatalogen. SQL_IC_SENSITIVE = Citerade identifierare i SQL är skiftlägeskänsliga och lagras i blandade fall i systemkatalogen. (I en SQL-92-kompatibel databas är citerade identifierare alltid skiftlägeskänsliga.) SQL_IC_MIXED = Citerade identifierare i SQL är inte skiftlägeskänsliga och lagras i blandade fall i systemkatalogen. En SQL-92 Entry level-conformant-drivrutin returnerar alltid SQL_IC_SENSITIVE. |
| SQL_ROW_UPDATES | 1.0 | En teckensträng: "Y" om en nyckeluppsättningsdriven eller blandad markör underhåller radversioner eller värden för alla hämtade rader och därför kan identifiera eventuella uppdateringar som gjorts på en rad av någon användare sedan raden senast hämtades. (Detta gäller endast uppdateringar, inte borttagningar eller infogningar.) Drivrutinen kan returnera flaggan SQL_ROW_UPDATED till radstatusmatrisen när SQLFetchScroll anropas. Annars "N". |
| SQL_SCHEMA_TERM | 1.0 | En teckensträng med datakällans leverantörsnamn för ett schema. till exempel "ägare", "Auktoriserings-ID" eller "Schema". Teckensträngen kan returneras i övre, nedre eller blandade skiftläge. En SQL-92 Entry level-conformant-drivrutin returnerar alltid "schema". Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_OWNER_TERM . |
| SQL_SCHEMA_USAGE | 2.0 | En SQLUINTEGER-bitmask som räknar upp de instruktioner där scheman kan användas: SQL_SU_DML_STATEMENTS = Scheman stöds i alla instruktioner för datamanipuleringsspråk: SELECT, INSERT, UPDATE, DELETE och om det stöds väljer du för uppdatering och placerade instruktioner för uppdatering och borttagning. SQL_SU_PROCEDURE_INVOCATION = Scheman stöds i ODBC-procedurens anropsinstrukation. SQL_SU_TABLE_DEFINITION = Scheman stöds i alla tabelldefinitionssatser: CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP TABLE och DROP VIEW. SQL_SU_INDEX_DEFINITION = Scheman stöds i alla indexdefinitionsuttryck: CREATE INDEX och DROP INDEX. SQL_SU_PRIVILEGE_DEFINITION = Scheman stöds i alla behörighetsdefinitionsuttryck: GRANT och REVOKE. En SQL-92-drivrutin på ingångsnivå returnerar alltid alternativen SQL_SU_DML_STATEMENTS, SQL_SU_TABLE_DEFINITION och SQL_SU_PRIVILEGE_DEFINITION som stöds. Denna InfoType har bytt namn för ODBC 3.0 från ODBC 2.0 InfoType-SQL_OWNER_USAGE . |
| SQL_SCROLL_OPTIONS | 1.0 | Obs! Informationstypen introducerades i ODBC 1.0. varje bitmask är märkt med den version där den introducerades. En SQLUINTEGER-bitmask som räknar upp de rullningsalternativ som stöds för rullningsbara markörer. Följande bitmasker används för att avgöra vilka alternativ som stöds: SQL_SO_FORWARD_ONLY = Markören rullar bara framåt. (ODBC 1.0) SQL_SO_STATIC = Data i resultatuppsättningen är statiska. (ODBC 2.0) SQL_SO_KEYSET_DRIVEN = Drivrutinen sparar och använder nycklarna för varje rad i resultatuppsättningen. (ODBC 1.0) SQL_SO_DYNAMIC = Drivrutinen behåller nycklarna för varje rad i raduppsättningen (nyckeluppsättningens storlek är densamma som raduppsättningens storlek). (ODBC 1.0) SQL_SO_MIXED = Drivrutinen behåller nycklarna för varje rad i nyckeluppsättningen och nyckeluppsättningens storlek är större än raduppsättningens storlek. Markören är nyckeluppsättningsdriven inuti nyckeluppsättningen och dynamisk utanför nyckeluppsättningen. (ODBC 1.0) Information om rullningsbara markörer finns i Rullningsbara markörer. |
| SQL_SEARCH_PATTERN_ESCAPE | 1.0 | En teckensträng som anger vad drivrutinen stöder som ett escape-tecken som tillåter användning av mönstret matcha metatecken understreck (_) och procenttecken (%) som giltiga tecken i sökmönster. Det här escape-tecknet gäller endast för de katalogfunktionsargument som stöder söksträngar. Om den här strängen är tom stöder drivrutinen inte ett escape-tecken för sökmönster. Eftersom den här informationstypen inte anger allmänt stöd för escape-tecknet i LIKE-predikatet innehåller SQL-92 inte krav för den här teckensträngen. Denna InfoType är begränsad till katalogfunktioner. En beskrivning av användningen av escape-tecknet i sökmönstersträngar finns i Mönstervärdeargument. |
| SQL_SERVER_NAME | 1.0 | En teckensträng med det faktiska datakällspecifika servernamnet. användbart när ett datakällnamn används under SQLConnect, SQLDriverConnect och SQLBrowseConnect. |
| SQL_SPECIAL_CHARACTERS | 2.0 | En teckensträng som innehåller alla specialtecken (dvs. alla tecken utom ett till z, A till Z, 0 till 9 och understreck) som kan användas i ett identifierarnamn, till exempel ett tabellnamn, kolumnnamn eller indexnamn, i datakällan. Till exempel "#$^". Om en identifierare innehåller ett eller flera av dessa tecken måste identifieraren vara en avgränsad identifierare. |
| SQL_SQL_CONFORMANCE | 3.0 | Ett SQLUINTEGER-värde som anger nivån för SQL-92 som stöds av drivrutinen: SQL_SC_SQL92_ENTRY = SQL-92-kompatibel på startnivå. SQL_SC_FIPS127_2_TRANSITIONAL = FIPS 127-2 övergångsnivå kompatibel. SQL_SC_SQL92_FULL = Fullständig SQL-92-kompatibel nivå. SQL_SC_ SQL92_INTERMEDIATE = SQL-92-kompatibel på mellannivå. |
| SQL_SQL92_DATETIME_FUNCTIONS | 3.0 | En SQLUINTEGER-bitmask som räknar upp de skalärfunktioner för datetime som stöds av drivrutinen och den associerade datakällan enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka datetime-funktioner som stöds: SQL_SDF_CURRENT_DATE SQL_SDF_CURRENT_TIME SQL_SDF_CURRENT_TIMESTAMP |
| SQL_SQL92_FOREIGN_KEY_DELETE_RULE | 3.0 | En SQLUINTEGER-bitmask som räknar upp de regler som stöds för en sekundärnyckel i en DELETE-instruktion enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka satser som stöds av datakällan: SQL_SFKD_CASCADE SQL_SFKD_NO_ACTION SQL_SFKD_SET_DEFAULT SQL_SFKD_SET_NULL En FIPS-övergångsdrivrutin som uppfyller kraven returnerar alltid alla dessa alternativ som stöds. |
| SQL_SQL92_FOREIGN_KEY_UPDATE_RULE | 3.0 | En SQLUINTEGER-bitmask som räknar upp de regler som stöds för en sekundärnyckel i en UPDATE-instruktion enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka satser som stöds av datakällan: SQL_SFKU_CASCADE SQL_SFKU_NO_ACTION SQL_SFKU_SET_DEFAULT SQL_SFKU_SET_NULL En SQL-92 Fullständig nivåkonformant drivrutin returnerar alltid alla dessa alternativ som stöds. |
| SQL_SQL92_GRANT | 3.0 | En SQLUINTEGER-bitmask som räknar upp de satser som stöds i GRANT-instruktionen enligt definitionen i SQL-92. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka satser som stöds av datakällan: SQL_SG_DELETE_TABLE (startnivå) SQL_SG_INSERT_COLUMN (mellannivå) SQL_SG_INSERT_TABLE (startnivå) SQL_SG_REFERENCES_TABLE (startnivå) SQL_SG_REFERENCES_COLUMN (startnivå) SQL_SG_SELECT_TABLE (startnivå) SQL_SG_UPDATE_COLUMN (startnivå) SQL_SG_UPDATE_TABLE (startnivå) SQL_SG_USAGE_ON_DOMAIN (FIPS-övergångsnivå) SQL_SG_USAGE_ON_CHARACTER_SET (FIPS-övergångsnivå) SQL_SG_USAGE_ON_COLLATION (FIPS-övergångsnivå) SQL_SG_USAGE_ON_TRANSLATION (FIPS-övergångsnivå) SQL_SG_WITH_GRANT_OPTION (startnivå) |
| SQL_SQL92_NUMERIC_VALUE_FUNCTIONS | 3.0 | En SQLUINTEGER-bitmask som räknar upp de numeriska skalära funktioner som stöds av drivrutinen och den associerade datakällan enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka numeriska funktioner som stöds: 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 | En SQLUINTEGER-bitmask som räknar upp predikaten som stöds i en SELECT-instruktion enligt definitionen i SQL-92. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka alternativ som stöds av datakällan: SQL_SP_BETWEEN (startnivå) SQL_SP_COMPARISON (startnivå) SQL_SP_EXISTS (startnivå) SQL_SP_IN (startnivå) SQL_SP_ISNOTNULL (startnivå) SQL_SP_ISNULL (startnivå) SQL_SP_LIKE (startnivå) SQL_SP_MATCH_FULL (fullständig nivå) SQL_SP_MATCH_PARTIAL(fullständig nivå) SQL_SP_MATCH_UNIQUE_FULL (fullständig nivå) SQL_SP_MATCH_UNIQUE_PARTIAL (fullständig nivå) SQL_SP_OVERLAPS (FIPS-övergångsnivå) SQL_SP_QUANTIFIED_COMPARISON (startnivå) SQL_SP_UNIQUE (startnivå) |
| SQL_SQL92_RELATIONAL_JOIN_OPERATORS | 3.0 | En SQLUINTEGER-bitmask som räknar upp de relationskopplingsoperatorer som stöds i en SELECT-instruktion enligt definitionen i SQL-92. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka alternativ som stöds av datakällan: SQL_SRJO_CORRESPONDING_CLAUSE (mellannivå) SQL_SRJO_CROSS_JOIN (fullständig nivå) SQL_SRJO_EXCEPT_JOIN (mellannivå) SQL_SRJO_FULL_OUTER_JOIN (mellannivå) SQL_SRJO_INNER_JOIN (FIPS-övergångsnivå) SQL_SRJO_INTERSECT_JOIN (mellannivå) SQL_SRJO_LEFT_OUTER_JOIN (FIPS-övergångsnivå) SQL_SRJO_NATURAL_JOIN (FIPS-övergångsnivå) SQL_SRJO_RIGHT_OUTER_JOIN (FIPS-övergångsnivå) SQL_SRJO_UNION_JOIN (fullständig nivå) SQL_SRJO_INNER_JOIN anger stöd för syntaxen FÖR INRE KOPPLING , inte för funktionen för inre koppling. Stöd för syntaxen för INRE KOPPLING är FIPS TRANSITIONAL, medan stöd för den inre kopplingsfunktionen är ENTRY. |
| SQL_SQL92_REVOKE | 3.0 | En SQLUINTEGER-bitmask som räknar upp de satser som stöds i REVOKE-instruktionen , enligt definitionen i SQL-92, som stöds av datakällan. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka satser som stöds av datakällan: SQL_SR_CASCADE (FIPS-övergångsnivå) SQL_SR_DELETE_TABLE (startnivå) SQL_SR_GRANT_OPTION_FOR (mellannivå) SQL_SR_INSERT_COLUMN (mellannivå) SQL_SR_INSERT_TABLE (startnivå) SQL_SR_REFERENCES_COLUMN (startnivå) SQL_SR_REFERENCES_TABLE (startnivå) SQL_SR_RESTRICT (FIPS-övergångsnivå) SQL_SR_SELECT_TABLE (startnivå) SQL_SR_UPDATE_COLUMN (startnivå) SQL_SR_UPDATE_TABLE (startnivå) SQL_SR_USAGE_ON_DOMAIN (FIPS-övergångsnivå) SQL_SR_USAGE_ON_CHARACTER_SET (FIPS-övergångsnivå) SQL_SR_USAGE_ON_COLLATION (FIPS-övergångsnivå) SQL_SR_USAGE_ON_TRANSLATION (FIPS-övergångsnivå) |
| SQL_SQL92_ROW_VALUE_CONSTRUCTOR | 3.0 | En SQLUINTEGER-bitmask som räknar upp de radvärdeskonstruktoruttryck som stöds i en SELECT-instruktion enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka alternativ som stöds av datakällan: SQL_SRVC_VALUE_EXPRESSION SQL_SRVC_NULL SQL_SRVC_DEFAULT SQL_SRVC_ROW_SUBQUERY |
| SQL_SQL92_STRING_FUNCTIONS | 3.0 | En SQLUINTEGER-bitmask som räknar upp de strängskalarfunktioner som stöds av drivrutinen och den associerade datakällan enligt definitionen i SQL-92. Följande bitmasker används för att avgöra vilka strängfunktioner som stöds: 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 | En SQLUINTEGER-bitmask som räknar upp de värdeuttryck som stöds enligt definitionen i SQL-92. DEN SQL-92- eller FIPS-överensstämmelsenivå där den här funktionen måste stödjas visas i parenteser bredvid varje bitmask. Följande bitmasker används för att avgöra vilka alternativ som stöds av datakällan: SQL_SVE_CASE (mellannivå) SQL_SVE_CAST (FIPS-övergångsnivå) SQL_SVE_COALESCE (mellannivå) SQL_SVE_NULLIF (mellannivå) |
| SQL_STANDARD_CLI_CONFORMANCE | 3.0 | En SQLUINTEGER-bitmask som räknar upp CLI-standarden eller standarder som drivrutinen överensstämmer med. Följande bitmasker används för att avgöra vilka nivåer drivrutinen uppfyller: SQL_SCC_XOPEN_CLI_VERSION1: Drivrutinen överensstämmer med OPEN Group CLI version 1. SQL_SCC_ISO92_CLI: Drivrutinen uppfyller ISO 92 CLI. |
| SQL_STATIC_CURSOR_ATTRIBUTES1 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en statisk markör som stöds av drivrutinen. Den här bitmasken innehåller den första delmängden av attribut. för den andra delmängden, se SQL_STATIC_CURSOR_ATTRIBUTES2. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES1 (och ersätt "statisk markör" med "dynamisk markör" i beskrivningarna). En SQL-92 Intermediate level-conformant-drivrutin returnerar vanligtvis SQL_CA1_NEXT, SQL_CA1_ABSOLUTE och SQL_CA1_RELATIVE alternativ som stöds, eftersom drivrutinen stöder rullningsbara markörer via den inbäddade SQL FETCH-instruktionen. Eftersom detta inte direkt avgör det underliggande SQL-stödet kan det dock hända att rullningsbara markörer inte stöds, inte ens för en sql-92-drivrutin på mellannivå. |
| SQL_STATIC_CURSOR_ATTRIBUTES2 | 3.0 | En SQLUINTEGER-bitmask som beskriver attributen för en statisk markör som stöds av drivrutinen. Den här bitmasken innehåller den andra delmängden av attribut. För den första delmängden, se SQL_STATIC_CURSOR_ATTRIBUTES1. Följande bitmasker används för att avgöra vilka attribut som stöds: 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 Beskrivningar av dessa bitmasker finns i SQL_DYNAMIC_CURSOR_ATTRIBUTES2 (och ersätt "statisk markör" med "dynamisk markör" i beskrivningarna). |
| SQL_STRING_FUNCTIONS | 1.0 | Obs! Informationstypen introducerades i ODBC 1.0. varje bitmask är märkt med den version där den introducerades. En SQLUINTEGER-bitmask som räknar upp skalära strängfunktioner som stöds av drivrutinen och tillhörande datakälla. Följande bitmasker används för att avgöra vilka strängfunktioner som stöds: 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) Om ett program kan anropa funktionen LOCATE scalar med string_exp1, string_exp2 och startargument returnerar drivrutinen SQL_FN_STR_LOCATE bitmask. Om ett program kan anropa funktionen LOCATE scalar med bara argumenten string_exp1 och string_exp2 returnerar drivrutinen SQL_FN_STR_LOCATE_2 bitmask. Drivrutiner som helt stöder funktionen LOCATE scalar returnerar båda bitmaskerna. (Mer information finns i Strängfunktioner i bilaga E, "Skalärfunktioner.") |
| SQL_SUBQUERIES | 2.0 | En SQLUINTEGER-bitmask som räknar upp predikaten som stöder underfrågor: SQL_SQ_CORRELATED_SUBQUERIES SQL_SQ_COMPARISON SQL_SQ_EXISTS SQL_SQ_INSQL_SQ_QUANTIFIED Den SQL_SQ_CORRELATED_SUBQUERIES bitmasken anger att alla predikat som stöder underfrågor stöder korrelerade underfrågor. En SQL-92 Entry level-conformant-drivrutin returnerar alltid en bitmask där alla dessa bitar har angetts. |
| SQL_SYSTEM_FUNCTIONS | 1.0 | En SQLUINTEGER-bitmask som räknar upp skalära systemfunktioner som stöds av drivrutinen och tillhörande datakälla. Följande bitmasker används för att avgöra vilka systemfunktioner som stöds: SQL_FN_SYS_DBNAME SQL_FN_SYS_IFNULL SQL_FN_SYS_USERNAME |
| SQL_TABLE_TERM | 1.0 | En teckensträng med datakällans leverantörsnamn för en tabell. till exempel "table" eller "file". Den här teckensträngen kan vara i övre, nedre eller blandade skiftläge. En SQL-92 Entry level-conformant-drivrutin returnerar alltid "table". |
| SQL_TIMEDATE_ADD_INTERVALS | 2.0 | En SQLUINTEGER-bitmask som räknar upp tidsstämpelintervallen som stöds av drivrutinen och tillhörande datakälla för skalärfunktionen TIMESTAMPADD. Följande bitmasker används för att avgöra vilka intervall som stöds: 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 En FIPS-övergångsdrivrutin för nivåkonform returnerar alltid en bitmask där alla dessa bitar har angetts. |
| SQL_TIMEDATE_DIFF_INTERVALS | 2.0 | En SQLUINTEGER-bitmask som räknar upp tidsstämpelintervallen som stöds av drivrutinen och tillhörande datakälla för skalärfunktionen TIMESTAMPDIFF. Följande bitmasker används för att avgöra vilka intervall som stöds: 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 En FIPS-övergångsdrivrutin för nivåkonform returnerar alltid en bitmask där alla dessa bitar har angetts. |
| SQL_TIMEDATE_FUNCTIONS | 1.0 | Obs! Informationstypen introducerades i ODBC 1.0. varje bitmask är märkt med den version där den introducerades. En SQLUINTEGER-bitmask som räknar upp de skalära datum- och tidsfunktioner som stöds av drivrutinen och tillhörande datakälla. Följande bitmasker används för att avgöra vilka datum- och tidsfunktioner som stöds: 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 | Obs! Informationstypen introducerades i ODBC 1.0. varje returvärde är märkt med den version där det introducerades. Ett SQLUSMALLINT-värde som beskriver transaktionsstödet i drivrutinen eller datakällan: SQL_TC_NONE = Transaktioner stöds inte. (ODBC 1.0) SQL_TC_DML = Transaktioner kan endast innehålla DML-instruktioner (Data Manipulation Language) (SELECT, INSERT, UPDATE, DELETE). DDL-instruktioner (Data Definition Language) som påträffas i en transaktion orsakar ett fel. (ODBC 1.0) SQL_TC_DDL_COMMIT = Transaktioner kan bara innehålla DML-instruktioner. DDL-instruktioner (CREATE TABLE, DROP INDEX och så vidare) som påträffas i en transaktion gör att transaktionen checkas in. (ODBC 2.0) SQL_TC_DDL_IGNORE = Transaktioner kan bara innehålla DML-instruktioner. DDL-instruktioner som påträffas i en transaktion ignoreras. (ODBC 2.0) SQL_TC_ALL = Transaktioner kan innehålla DDL-instruktioner och DML-instruktioner i valfri ordning. (ODBC 1.0) (Eftersom stöd för transaktioner är obligatoriskt i SQL-92 returnerar en SQL-92-drivrutin [någon nivå] aldrig SQL_TC_NONE.) |
| SQL_TXN_ISOLATION_OPTION | 1.0 | En SQLUINTEGER-bitmask som räknar upp de transaktionsisoleringsnivåer som är tillgängliga från drivrutinen eller datakällan. Följande bitmasker används tillsammans med flaggan för att avgöra vilka alternativ som stöds: SQL_TXN_READ_UNCOMMITTED SQL_TXN_READ_COMMITTED SQL_TXN_REPEATABLE_READ SQL_TXN_SERIALIZABLE Beskrivningar av dessa isoleringsnivåer finns i beskrivningen av SQL_DEFAULT_TXN_ISOLATION. För att ange transaktionsisoleringsnivån anropar ett program SQLSetConnectAttr för att ange attributet SQL_ATTR_TXN_ISOLATION. Mer information finns i FUNKTIONEN SQLSetConnectAttr. En SQL-92-drivrutin på ingångsnivå returnerar alltid SQL_TXN_SERIALIZABLE som stöds. En FIPS-övergångsdrivrutin för nivåkonform returnerar alltid alla dessa alternativ som stöds. |
| SQL_UNION | 2.0 | En SQLUINTEGER-bitmask som räknar upp stödet för UNION-satsen : SQL_U_UNION = Datakällan stöder UNION-satsen . SQL_U_UNION_ALL = Datakällan stöder nyckelordet ALL i UNION-satsen . (SQLGetInfo returnerar både SQL_U_UNION och SQL_U_UNION_ALL i det här fallet.) En SQL-92 Entry level-conformant drivrutin returnerar alltid båda dessa alternativ som stöds. |
| SQL_USER_NAME | 1.0 | En teckensträng med namnet som används i en viss databas, som kan skilja sig från inloggningsnamnet. |
| SQL_XOPEN_CLI_YEAR | 3.0 | En teckensträng som anger året då specifikationen öppna gruppen publicerades och som odbc-drivrutinshanterarens version helt uppfyller. |
Exempel
SQLGetInfo returnerar listor över alternativ som stöds som en SQLUINTEGER-bitmask i *InfoValuePtr. Bitmasken för varje alternativ används tillsammans med flaggan för att avgöra om alternativet stöds.
Ett program kan till exempel använda följande kod för att avgöra om skalärfunktionen SUBSTRING stöds av drivrutinen som är associerad med anslutningen.
Ett annat exempel på hur du använder SQLGetInfo finns i SQLTables-funktionen.
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
Relaterade funktioner
Returnera inställningen för ett anslutningsattribut
SQLGetConnectAttr-funktion
Avgöra om en drivrutin stöder en funktion
SQLGetFunctions-funktion
Returnera inställningen för ett instruktionsattribut
SQLGetStmtAttr-funktion
Returnera information om en datakällas datatyper
SQLGetTypeInfo-funktion