驅動程式規格子機碼
ODBC 驅動程式子機碼列出的每個驅動程式都有自己的子機碼。 此子機碼的名稱與 ODBC 驅動程式子機碼的對應值相同。 此子機碼的值列出驅動程式及驅動程式設定 DLL 的完整路徑、SQLDrivers 傳回的驅動程式關鍵字值,以及使用計數。 數值的格式如下表所示。
名稱 | 資料類型 | 資料 |
---|---|---|
API Level | REG_SZ | 0 | 1 | 2 |
ConnectFunctions | REG_SZ | {Y|N}{Y|N}{Y|N} |
Create DSN | REG_SZ | 驅動程式-描述 |
驅動程式 | REG_SZ | 驅動程式-DLL-路徑 |
DriverODBCVer | REG_SZ | nn.nn |
FileExtns | REG_SZ | *. file-extension1[,*. file-extension2]... |
檔案使用方法 | REG_SZ | 0 | 1 | 2 |
設定 | REG_SZ | 集合-DLL-路徑 |
結構化查詢語言 (SQL) 等級 | REG_SZ | 0 | 1 | 2 |
UsageCount | REG_DWORD | 計數 |
下表呈現每個關鍵字的使用方式。
關鍵字 | 使用方式 |
---|---|
API Level | 指出驅動程式支援的 ODBC 介面一致性層級的數字: 0 = 無 1 = 層級 1 支援 2 = 層級 2 支援 這必須與 SQLGetInfo 的 SQL_ODBC_INTERFACE_CONFORMANCE 選項傳回的值相同。 |
Create DSN | 安裝驅動程式時需要建立的一或多個資料來源名稱。 以 CreateDSN 關鍵字列出的每個資料來源,系統資訊必須包含一個資料來源規格區段。 這些區段不應包含 Driver 關鍵字,因為這是在驅動程式規格區段所指定,但必須包含驅動程式設定 DLL ConfigDSN 函式足夠的資訊,才能建立資料來源規格,而不顯示任何對話方塊。 如需資料來源規格區段的格式,請參閱資料來源規格子機碼。 |
連線功能 | 一個三字元字串,指出驅動程式是否支援 SQLConnect、SQLDriverConnect 以及 SQLBrowseConnect。 如果驅動程式支援 SQLConnect,則第一個字元為「Y」;否則為「N」。 如果驅動程式支援 SQLDriverConnect,則第二個字元為「Y」;否則為「N」。 如果驅動程式支援 SQLBrowseConnect,則第三個字元為「Y」;否則為「N」。 例如,如果驅動程式支援 SQLConnect 及 SQLDriverConnect,但不支援 SQLBrowseConnect,則三個字元字串為「YYN」。 |
DriverODBCVer | 具有驅動程式支援 ODBC 版本的字元字串。 版本的格式為 nn.nn,其中前兩位數字是主要版本,而後兩位數字則是次要版本。 針對本手冊所述的 ODBC 版本,驅動程式必須傳回 「03.00」。 這必須與為 SQLGetInfo 的 SQL_DRIVER_ODBC_VER 選項傳回的值相同。 |
FileExtns | 針對檔案型驅動程式,驅動程式可使用的副檔名的逗號分隔清單。 例如,dBASE 驅動程式可能會指定 *.dbf,而格式化的文字檔驅動程式可能會指定 *.txt、*.csv。 如需應用程式如何使用這項資訊的範例,請參閱 檔案使用方法 關鍵字。 |
檔案使用方法 | 指出檔案型驅動程式如何直接處理資料來源的檔案的數字。 0 = 此驅動程式不是檔案型驅動程式。 例如,ORACLE 驅動程式是一個以 DBMS 為基礎的驅動程式。 1 = 檔案型驅動程式會將資料來源的檔案作為資料表。 例如,Xbase 驅動程式會將每個 Xbase 檔案作為資料表。 2 = 檔案型驅動程式會將資料來源的檔案視為目錄。 例如,Microsoft Access 驅動程式將每個 Microsoft Access 檔案視為完整的資料庫。 應用程式可能會使用此方式來判斷使用者將如何選取資料。 例如,Xbase 及 Paradox 使用者通常認為資料儲存在檔案,而 ORACLE 與 Microsoft Access 使用者則通常認為資料儲存在資料表。 當使用者從 [檔案] 功能表選取 [開啟資料檔案] 時,應用程式可能會顯示 [Windows 檔案開啟] 通用對話方塊。 檔案類型清單會針對指定 FileUsage 值為 1 及「Y」的驅動程式使用 FileExtns 關鍵字所指定的副檔名,做為 ConnectFunctions 關鍵字值的第二個字元。 使用者選取檔案之後,應用程式將使用 DRIVER 關鍵字呼叫 SQLDriverConnect,然後執行 SELECT * FROM table-name 陳述式。 當使用者從 [檔案] 功能表選取 [匯入資料] 時,應用程式可能會顯示驅動程式描述清單,這些驅動程式將 FileUsage 值指定為 0 或 2,並將「Y」指定為 ConnectFunctions 關鍵字值的第二個字元。 使用者選取驅動程式之後,應用程式將使用 DRIVER 關鍵字呼叫 SQLDriverConnect,然後顯示自訂的 [選取資料表] 對話方塊。 |
SQL 等級 | 指出驅動程式支援的 SQL-92 文法的數字: 0 = SQL-92 入門級別 1 = FIPS127-2 過度版本 2 = SQL-92 中等版本 3 = SQL-92 完整版 這必須與 SQLGetInfo 的 SQL_SQL_CONFORMANCE選項傳回的值相同。 |
如需使用量計數的詳細資訊,請參閱本節先前討論的使用量計數。
應用程式不應設定使用量計數。 ODBC 會維持此計數。
例如,假設格式化文字檔的驅動程式具有名為 Text.dll 的驅動程式 DLL、名為 Txtsetup.dll 的個別驅動程式安裝 DLL,並已安裝三次。 如果驅動程式支援第 1 級 API 一致性層級,支援最低 SQL 文法一致性層級、將檔案視為資料表,且可使用具有 .txt 及 .csv 副檔名的檔案,則文字子機碼值可能如下所示:
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