標籤:介面 關閉資料庫 之一 markdown orm 交換 jsb south db2
資料庫是電腦中一種專門管理資料資源的系統,目前幾乎所有軟體都需要與資料庫打交道(包括作業系統,比如Windows上的註冊表其實也是一種資料庫),有些軟體更是以資料庫為核心因此掌握資料庫系統的使用方法以及資料庫系統編程介面的使用方法是程式員非常重要的基本技能之一。所以我花了一定的時間學習了在Windows平台上使用COM介面的方式操作資料庫。這段時間我會將自己學習過程中掌握的知識和其中的一些坑都發布出來,供個人蔘考,也方便他人學習
現在常見的DBMS主要有ORACLE、Sybase、Informix、DB2、Sql Server、Access、Visual Foxpro、MySql。由於目前我主要是在學習Windows平台上的編程技巧,所以這系列的內容將會以Windows平台為主,所以資料庫選擇了Sql Server,編程介面主要是ADO和OELDB.
Windows平台常見的資料庫編程組件
目前Windows平台上主要使用的是ODBC、DAO、RDO、ADO、ADO.NET、OLEDB。
其他的資料庫編程介面由於被微軟棄用或者使用人數較少,等等原因我並沒有關心他們,目前主要學習的是OLEDB和ADO編程。由於ADO是針對OLEDB進行的在封裝的ActiveX控制項,掌握了OLEDB,再學習ADO就沒有什麼難度了,所以我將重點放在OLEDB上,而對於ADO只會簡單的進行簡單的步驟說明。
OLEDB的基本概念
- 資料提供者和資料消費者:在OLEDB中將介面兩端的軟體分別稱為資料提供者(一般指資料庫這一端,著重與資料的組織儲存)和資料消費者(指應用程式這一端,著重與資料庫資料的展示與使用)。OELDB是一種針對兩頭的編程介面,它為資料提供者和消費者分別準備了一組介面,資料提供者主要實現一些介面,用於將資料庫中的資料輸出到應用程式或者根據應用程式的指令完成資料的操作,而資料消費者主要使用其中提供的編程介面,實現資料的擷取或者更新等操作。(我覺得他們二者之間的關係就像是有一套標準的COM介面,一個負責調用,一個負責實現)從本質上說,OLEDB其實就是一個標準的資料庫與應用系統間的資料標準交換介面,它的好處就是高效,通用和靈活。
- 資料來源:一般來講資料來源可以理解為資料提供者或者理解為各個DBMS,但是在ADO中,資料來源可以是文字檔,excel或者xml檔案
MSDAC簡介
MSDAC(Microsoft Data Access Components)微軟資料庫訪問組件,目前MSDAC上主要有ADO、OLEDB、ODBC
在Windows的MSDN中提供了完整的MSDAC協助文檔,在MSDN中,選擇“目錄”-->"Win32和COM開發"-->"Data Access And Storage"-->"Windows Data Access Components SDK"中。它的下層目錄就是各種組件的詳細文檔,它的整體結構如下:
OLEDB編程的基本思路
OLEDB編程的基本步驟如下:
- 首先建立資料來源對象,指定連結資料庫的相關屬性,連結到資料庫
- 接著建立會話對象
- 根據回話對象建立出Command對象
- 利用Command對象執行SQL語句,並返回結果集對象
- 讀取結果集對象中的資料,並輸出
- 最後關閉所有對象介面,關閉資料庫連接
這些東西在後面的內容中會一一進行詳細的說明,這篇博文就這樣只開個頭。
Windows資料庫編程介面簡介