共用方式為


標準程式設計介面

程式設計介面或許是最明顯的標準化候選項目。 事實上,在開發 ODBC 時,ANSI 和 ISO 早已針對內嵌 SQL 和 SQL 模組提供相應的標準。 雖然資料庫 CLI 不存在任何標準,但 SQL Access Group (資料庫廠商的產業聯盟) 那時正在考慮是否要建立標準;ODBC 的一部分後來成為了此聯盟工作時的基礎。

ODBC 的其中一個需求是單一的應用程式二進位檔必須能與多個 DBMS 搭配運作。 基於這個理由,ODBC 未使用內嵌 SQL 或模組語言。 雖然內嵌 SQL 中的語言和模組語言已標準化,但各自都與 DBMS 特定的先行編譯器有所繫結。 因此,每個 DBMS 都必須重新編譯應用程式,所產生的二進位檔也只能與單一 DBMS 搭配運作。 雖然迷你電腦和大型主機世界中的少量應用程式可接受這個限制,但個人電腦的世界就無法接受。 首先,這對物流來說是一個噩耗,他們必須為客戶提供多個大量、壓縮包裝的軟體版本;其次,個人電腦應用程式往往需要同時存取多個 DBMS。

另一方面,呼叫層級介面則可透過位於每個本機電腦上的程式庫或資料庫驅動程式來實作;每個 DBMS 都需要不同的驅動程式。 因為新式作業系統可以在執行階段載入這類程式庫 (例如 Microsoft Windows 作業系統上的動態連結程式庫),所以單一應用程式不需要重新編譯就可以存取不同 DBMS 的資料,而且還可以同時存取多個資料庫的資料。 有新的資料庫驅動程式可供使用時,使用者可以直接在電腦上安裝這些驅動程式,而不需要修改、重新編譯或重新連結其資料庫應用程式。 此外,呼叫層級介面很適合 ODBC,因為 Windows (ODBC 的原始開發平台) 已大量使用這類程式庫。