ODBC是什么【Open Database Connectivity,開放數據庫互連】
ODBC(Open Database Connectivity,開放數據庫互連)提供了一種標準的 API(應用程序編程接口)方法來訪問數據庫管理系統(DBMS)。這些 API 利用 SQL 來完成其大部分任務。ODBC 本身也提供了對 SQL 語言的支持,用戶可以直接將 SQL 語句送給 ODBC。ODBC 的設計者們努力使它具有最大的獨立性和開放性。
在 ODBC 誕生之前,如果要開發數據庫應用程序,則必須要使用數據庫廠商隨數據庫產品一同發布的一些工具集來訪問數據庫,或者在程序中使用嵌入式 SQL 來訪問數據庫。當時,對于訪問數據庫的方法,缺乏一個基于 C 語言的統一編程接口。在這種背景下,微軟于 1992 年發表了 ODBC。之后,X/Open 組織以及 ISO 標準化組織基于 ODBC 3.0 的規范,進一步進行了標準化,于 1995 年發表了 SQL/CLI 標準。該標準已經成為了 SQL 標準的一部分。
ODBC 的運用形態通常是由應用程序經過一個稱之為 ODBC 管理器的工具,創建一個 DSN,指明需要調用的 ODBC 驅動程序,從而訪問對應的數據庫。對于用戶的應用程序而言,ODBC 驅動程序是相對不可見的。用戶只需要在 ODBC 管理器中配置相應的數據庫的數據源信息,并登錄相應的 ODBC 驅動程序即可。
Microsoft ODBC
微軟提供的一個實現,目前在大部分 Windows 操作系統上可以找到它。
unixODBC
unixODBC 項目為非 Windows 操作系統(如各版本的 Linux、Unix 以及 Mac OS)提供的一個實現。unixODBC 的實現涵蓋了 ODBC 3.0 中的所有 API 規范,并且提供了一個類似于 Microsoft ODBC 那樣的 GUI 形式的配置界面供用戶進行數據源的配置。unixODBC 的代碼在 GPL 協議下公開,目前該項目是由 Easysoft 的 Nick Gorham 進行管理。unixODBC 現在已經是很多 Linux 發行版的標準安裝模式下的一個必要組件。
iODBC
iODBC 項目(Independent Open DataBase Connectivity)的目標是提供一個平臺無關的實現,該項目目前由 Openlink Software 進行管理。其代碼是在 LGPL 協議以及 BSD 協議下發布。蘋果公司從 Mac OS X v10.2 時代開始,便將 iODBC 綁定至 Mac OS 操作系統中。