ODBC(Open Database Connectivity)?? Connectivity:連通性
DSN(Data Source Name)用于指定ODBC與相關的驅動程序相對應的一個入口
當應用程序要使用ODBC訪問數據庫時,就需要指定一個DSN以便于連接到一個指定的ODBC驅動程序
ATL(Active樣板庫)
UDA通用數據訪問,使用OLE DB訪問任何數據庫 由OLE DB,ADO,ODBC組成
RDO遠程數據對象
DAO數據訪問對象
ODBC開放數據庫互連
ADO(Active Data Object)是一個訪問OLE DB的類層
OLE DB有一組COM接口組成
ODBC的框架
1。使用驅動器管理器和特定的數據庫驅動器來獲得ODBC,
2。利用ODBC來調用應用程序,訪問ODBC驅動器管理器(ODBC32DLL),
3。利用ODBC驅動器管理器調用數據庫指定的ODBC驅動器,
4。利用數據庫指定的ODBC驅動器來訪問數據庫
ODBC訪問多種數據庫
????????????????????????????????????????????????????????????????????????????|->Oracle ODBC數據庫驅動器
ODBC應用程序-->ODBC驅動器管理程序-->|?????????????????????????????-->關系數據庫數據源
????????????????????????????????????????????????????????????????????????????|->SQL Server數據庫驅動器
CObject類 CDatabase CRecordset訪問數據庫源
DSN共分為三類:
用戶DSN:對當前登錄用戶可見,只能夠用于當前計算機。
系統DSN:對當前系統上所有用戶可見,包括NT中的服務。
文件DSN:DSN信息存放在文件中,對能夠訪問到該文件的用戶可見。
一個使用Access數據庫的DSN中的信息如下:
[ODBC]
DRIVER=Driver do Microsoft Access (*.mdb)
UID=Admin
DefaultDir=C:\DB
DBQ=C:\DB\1.mdb
在使用ODBC開發時一個重要的問題就是數據轉換的問題,在程序運行過程中數據需要經歷兩次轉換:C語言的數據或結構類型與ODBC的數據類型的轉換,ODBC與SQL間數據類型的轉換
ODBC中的句柄分為三類:環境句柄,數據庫連接句柄,SQL語句句柄