桌面資料庫驅動程式架構
這些驅動程式是專為在 Microsoft Windows 95 或更新版本,或 Windows NT 4.0 和 Windows 2000 上使用而設計。 Windows 95 或更新版本僅支援 32 位元應用程式;Windows NT 4.0 和 Windows 2000 支援 16 位元和 32 位元應用程式。
注意
如需要與這些驅動程式搭配使用之 ODBC 版本的相關資訊,請參閱 ODBC 程式設計人員參考,以及過去和目前的版本資訊。 除了已說明的區域之外,這些驅動程式符合 ODBC 程式設計人員參考。
ODBC 桌面資料庫驅動程式包含適用於 Microsoft Access、dBASE、Microsoft Excel、Paradox 和 Text 的 32 位元驅動程式。 不包含 16 位元驅動程式。 (會個別提供 Microsoft FoxPro 的驅動程式。)
Windows 95 或更新版本上的應用程式/驅動程式架構為:
不支援在 Windows 95 上由 16 位元應用程式使用這些驅動程式。
Windows NT 4.0 和 Windows 2000 上的應用程式/驅動程式架構為:
桌面資料庫驅動程式是兩階層驅動程式。 在兩階層設定中,驅動程式不會執行剖析、驗證、最佳化和執行查詢的流程。 相反地,Microsoft Jet 會執行這些工作。 其會處理 ODBC API 呼叫,並作為 SQL 引擎。 Microsoft Jet 已成為驅動程式不可分割的一部分;其隨附驅動程式,並且駐留在驅動程式,即使電腦上沒有其他應用程式使用該驅動程式也一樣。
桌面資料庫驅動程式包含六個不同的驅動程式,或更精確地說,ODBC 驅動程式管理員會以六種不同的方式使用一個驅動程式檔案 (Odbcjt32.dll)。 資料來源登錄輸入中的 DRIVERID 旗標會決定驅動程式管理員使用 Odbcjt32.dll 中的哪個驅動程式。 應用程式會在呼叫 SQLDriverConnect 中包含的連接字串中傳遞此旗標。 根據預設,旗標是 Microsoft Access 驅動程式的識別碼。
驅動程式安裝程式檔案會在安裝時間變更 DRIVERID 旗標。 Microsoft Access 驅動程式以外的所有驅動程式都有相關聯的安裝程式 DLL。 當您在資料來源的 Microsoft ODBC 資料來源管理員中按一下 [安裝程式] 時,ODBC 安裝程式 DLL (Odbcinst.dll) 會載入安裝程式 DLL。 安裝程式 DLL 會匯出 ODBC 安裝程式函數 SQLConfigDataSource。 如果將視窗控制代碼傳遞至 SQLConfigDataSource,此函數會顯示設定視窗,並根據從使用者介面選取的驅動程式變更 DRIVERID 旗標。
以程式設計方式建立檔案時,會將 NULL 視窗控制代碼傳遞至 SQLConfigDataSource,而函數會動態建立資料來源,並根據函數呼叫中的 lpszDriver 引數變更 DRIVERID 旗標。
Odbcjt32.dll 會在 Microsoft Jet API 之上實作 ODBC 函數。 不過,ODBC 與 Microsoft Jet 函數之間沒有直接對應。 許多因素 (例如資料指標模型和 SQL 對應) 都防止函數的直接相互關聯。
ODBC 驅動程式位於 Microsoft Jet 引擎與 ODBC 驅動程式管理員之間。 應用程式所呼叫的一些 ODBC 函數是由驅動程式管理員處理,而不會傳遞至驅動程式。 針對這些函數,Microsoft Jet 永遠不會看到函數呼叫,因為其沒有驅動程式管理員的直接連接。