古蹟修復_淺解在遺留系統中ADO與RDS的程式開發_補充ODBC、OLE DB
https://www.cnblogs.com/cdaniu/p/16709716.html 資料庫存常見的方式 ODBC(Open DataBase COnnectivity)開放資料庫連接 提供應用程式介面,使得任一DB都能藉由ODBC驅動與指定的DBMS相連。 早期的程式設計師在程式中要連接資料庫是非常困難的,每種DBMS產生的資料庫檔案的格式都不一樣,程式設計師要對他們存取的DBMS的底層API有相當程度的了解,透過API來存取特定的DBMS。這就產生了一個問題,當使用的DBMS改變後,或是使用者習慣使用的DBMS與開發程式使用DBMS的不符合時,應用軟體便無法正常存取DBMS。因此,能處理各種資料檔的API便產生了,這就是大家都知道的ODBC。 ODBC是透過API的早期產物,是根據SQL 的,以此作為存取資料的標準。這時大多數DBMS提供了一個根據ODBC的驅動程序,遵從了這個標準的DBMS被稱為ODBC相容的DBMS。 ODBC相容的資料庫包括Access, MS-SQL Server, Oracle, Informix等。 用戶程式能藉由呼叫ODBC驅動管理器中相應的驅動程式去存取或管理資料庫。 當程式要去訪問DB時候是交由ODBC管理器將應用程序的資料庫訪問請求傳遞給相應資料庫驅動程序,該driver再去執行SQL完成任務。 DAO(Data Access Objects)資料庫訪問物件 使用微軟的Jet提供資料庫訪問物件集合做存取DBMS,據說性能比ODBC更好。 OLE DB 微軟發明的,想用來淘汰掉ODBC的。OLE DB不光可連接各種DB,還能達到連接類似AD、OS文件目錄各種不同DB資料源,當然也需要分別使用不同的driver。 其實定位跟ODBC差不多,差異在於有COM標準支援(底層用C++ API),ODBC則是根據C API。 當ODBC成為資料庫介面的標準之後,大多數關聯式資料庫都提供了根據ODBC的驅動程序,使得該類型的資料庫檔案可以被ODBC存取。前面說過,ODBC只可以存取任何支援SQL語言的關聯式資料庫,而OLEDB可以存取各種類型的資料來源,包括關聯式資料庫,所以說,符合ODBC 標準的資料來源是符合OLE DB標準的資料來源的子集。 那麼,OLEDB是否可以取代ODBC呢?不會。 符合ODBC的資...