Unterschlüssel für Treiberspezifikationen

Jeder im Unterschlüssel für ODBC-Treiber aufgeführte Treiber hat einen eigenen Unterschlüssel. Dieser Unterschlüssel hat denselben Namen wie der entsprechende Wert unter dem Unterschlüssel für ODBC-Treiber. Die Werte unter diesem Unterschlüssel enthalten die vollständigen Pfade des Treibers und der Treiber-Setup-DLLs, die Werte der von SQLDrivers zurückgegebenen Treiber-Schlüsselwörter und den Verwendungszähler. Die Formate der Werte sind der folgenden Tabelle zu entnehmen.

Name Datentyp Daten
APILevel REG_SZ 0 | 1 | 2
ConnectFunctions REG_SZ {Y|N}{Y|N}{Y|N}
CreateDSN REG_SZ driver-description
Treiber REG_SZ driver-DLL-path
DriverODBCVer REG_SZ nn.nn
FileExtns REG_SZ *. file-extension1[,*. file-extension2]...
FileUsage REG_SZ 0 | 1 | 2
Setup REG_SZ setup-DLL-path
SQLLevel REG_SZ 0 | 1 | 2
UsageCount REG_DWORD count

Die Verwendung der einzelnen Schlüsselwort ist der folgenden Tabelle zu entnehmen.

Schlüsselwort Verbrauch
APILevel Eine Zahl, die den vom Treiber unterstützten Konformitätsgrad der ODBC-Schnittstelle angibt:

0 = Keine

1 = Grad 1 unterstützt

2 = Grad 2 unterstützt

Dies muss mit dem Wert übereinstimmen, der in SQLGetInfo für die Option SQL_ODBC_INTERFACE_CONFORMANCE zurückgegeben wird.
CreateDSN Der Name einer oder mehrerer beim Installieren des Treibers zu erstellender Datenquellen. Die Systeminformationen müssen einen Abschnitt zur Datenquellenspezifikation für jede mit dem Schlüsselwort CreateDSN aufgeführte Datenquelle enthalten. Diese Abschnitte sollten nicht das Treiber-Schlüsselwort enthalten, da dies im Abschnitt zur Treiberspezifikation angegeben wird, müssen aber genügend Informationen enthalten, damit die Funktion ConfigDSN in der Treiber-Setup-DLL eine Datenquellenspezifikation erstellen kann, ohne dass Dialoge angezeigt werden müssen. Informationen zum Format eines Abschnitts zur Datenquellenspezifikation finden Sie unter Unterschlüssel für Datenquellenspezifikationen.
ConnectFunctions Eine dreistellige Zeichenfolge, die angibt, ob der Treiber SQLConnect, SQLDriverConnect und SQLBrowseConnect unterstützt. Wenn der Treiber SQLConnect unterstützt, ist das erste Zeichen „Y“, andernfalls ist es „N“. Wenn der Treiber SQLDriverConnect unterstützt, ist das zweite Zeichen „Y“, andernfalls ist es „N“. Wenn der Treiber SQLBrowseConnect unterstützt, ist das dritte Zeichen „Y“, andernfalls ist es „N“. Wenn beispielsweise ein Treiber SQLConnect und SQLDriverConnect, nicht aber nicht SQLBrowseConnect unterstützt, lautet die dreistellige Zeichenfolge „YYN“.
DriverODBCVer Eine Zeichenfolge mit der vom Treiber unterstützten ODBC-Version. Die Version hat die Form nn.nn, wobei die ersten beiden Ziffern für die Hauptversion und die nächsten beiden Ziffern für die Nebenversion stehen. Für die in diesem Handbuch beschriebene ODBC-Version muss der Treiber „03.00“ zurückgeben.

Dies muss mit dem Wert übereinstimmen, der in SQLGetInfo für die Option SQL_DRIVER_ODBC_VER zurückgegeben wird.
FileExtns Bei dateibasierten Treibern ist dies eine durch Komma getrennte Liste der Erweiterungen der Dateien, die der Treiber verwenden kann. So könnte z. B. bei einem dBASE-Treiber *.dbf und bei einem formatierten Textdateitreiber *.txt,*.csv angegeben sein. Ein Beispiel dafür, wie eine Anwendung diese Informationen verwenden kann, finden Sie unter dem Schlüsselwort FileUsage.
FileUsage Eine Zahl, die angibt, wie Dateien von einem dateibasierter Treiber in einer Datenquelle direkt behandelt werden.

0 = Der Treiber ist kein dateibasierter Treiber. Beispielsweise ist ein ORACLE-Treiber ein DBMS-basierter Treiber.

1 = Ein dateibasierter Treiber behandelt Dateien in einer Datenquelle als Tabellen. Beispielsweise behandelt ein Xbase-Treiber jede Xbase-Datei als Tabelle.

2 = Ein dateibasierter Treiber behandelt Dateien in einer Datenquelle als Katalog. Beispielsweise behandelt ein Microsoft Access-Treiber jede Microsoft Access-Datei als vollständige Datenbank.

Anhand dessen kann eine Anwendung bestimmen, wie Benutzer Daten auswählen. Beispielsweise stellen sich Xbase- und Paradox-Benutzer Daten oft als in Dateien gespeichert vor, während ORACLE- und Microsoft Access-Benutzer sich Daten normalerweise als in Tabellen gespeichert vorstellen.

Wenn ein Benutzer im Menü Datei die Option Datendatei öffnen auswählt, kann eine Anwendung den allgemeinen Dialog Windows-Datei öffnen anzeigen. Die Liste der Dateitypen würde die mit dem Schlüsselwort FileExtns angegebenen Dateierweiterungen für Treiber verwenden, die einen FileUsage-Wert von 1 und „Y“ als zweites Zeichen des Werts des Schlüsselworts ConnectFunctions haben. Nach Auswählen einer Datei durch den Benutzer würde die Anwendung SQLDriverConnect mit dem Schlüsselwort DRIVER aufrufen und führt dann eine Anweisung SELECT * FROM table-name ausführen.

Wenn der Benutzer Daten importieren aus dem Menü Datei auswählt, könnte eine Anwendung eine Liste der Beschreibungen für Treiber anzeigen, die einen FileUsage-Wert von 0 oder 2 und „Y“ als zweites Zeichen des Werts des Schlüsselworts ConnectFunctions haben. Nach Auswählen eines Treiber durch den Benutzer würde die Anwendung SQLDriverConnect mit dem Schlüsselwort DRIVER aufrufen und dann einen benutzerdefinierten Dialog Tabelle auswählen anzeigen.
SQLLevel Eine Zahl, die die vom Treiber unterstützte SQL-92-Grammatik angibt:

0 = SQL-92 Entry

1 = FIPS127-2 Transitional

2 = SQL-92 Intermediate

3 = SQL-92 Full

Dies muss mit dem Wert übereinstimmen, der in SQLGetInfo für die Option SQL_SQL_CONFORMANCE zurückgegeben wird.

Informationen zu Verwendungszählern finden Sie weiter oben in diesem Abschnitt unter Zählen der Verwendung.

Anwendungen sollten den Verwendungszähler nicht festlegen. Dieser Zähler wird von ODBC geführt.

Nehmen wir zum Beispiel an, ein Treiber für formatierte Textdateien hat eine Treiber-DLL mit dem Namen Text.dll, eine separate Treiber-Setup-DLL mit dem Namen Txtsetup.dll und wurde dreimal installiert. Wenn der Treiber den API-Konformitätsgrad 1 unterstützt, den Mindestkonformitätsgrad der SQL-Grammatik unterstützt, Dateien als Tabellen behandelt und Dateien mit den Erweiterungen .txt und .csv verwenden kann, könnten die Werte unter dem Text-Unterschlüssel wie folgt lauten:

APILevel : REG_SZ : 1  
ConnectFunctions : REG_SZ : YYN  
Driver : REG_SZ : C:\WINDOWS\SYSTEM32\TEXT.DLL  
DriverODBCVer : REG_SZ : 03.00.00  
FileExtns : REG_SZ : *.txt,*.csv  
FileUsage : REG_SZ : 1  
Setup : REG_SZ : C:\WINDOWS\SYSTEM32\TXTSETUP.DLL  
SQLLevel : REG_SZ : 0  
UsageCount : REG_DWORD : 0x3