CDaoDatabase

CDaoDatabase

類CDaoDatabase代表了一個資料庫連線。使用它可以操縱資料庫中的數據。有關支持的資料庫格式,請參閱成員函式GetName。在一個給定工作區(由CDaoWorspace對象代表)中,同時可以有多個活動的CDaoDatabase對象。工作區維護了一組開放資料庫對象——資料庫連線。

基本介紹

  • 中文名:CDaoDatabase
  • 基於ODBC
  • 類型:MFC資料庫類
  • 前綴:CDao
注意:
MFC DAO資料庫類與那些基於ODBC的MFC資料庫類是不同的。所有的DAO資料庫類的名字都有CDao前綴。類CDaoDatabase提供了一個類似於ODBC類CDabase的接口。二者主要的不同在於:CDatabse是通過ODBC和ODBC驅動程式存取資料庫的,而CDaoDatabase則是通過數據存取對象(Data Access Object,DAO)存取資料庫的。DAO基於Microsoft Jet資料庫引擎。一般說來,基於DAO的MFC類比基於ODBC的類處理能力更強。基於DAO的類可以通過ODBC驅動也可以經由自己的資料庫引擎存取數據。基於DAO的類也支持數據定義操作(DDL),比如不用直接調用DAO而通過類建立表。
用法
在創建記錄集時,可以隱式地建立資料庫對象,也可以顯式地創建資料庫對象。要顯式地通過CDaoDatabase利用現有的資料庫,只需:
·構造一個CDaoDatabase對象,向打開的CDaoWorkspace對象傳送它的指針。·或者不指定工作區而構造一個CDaoDatabase對象(MFC會建立一個臨時的工作區)。
建立一個新的Microft Jet資料庫(.MDB),要構造一個CDaoDatabase對象並且調用它的成員函式Create。 在調用Create之後不要再調用Open。
打開一個現有的資料庫,要構造一個CDaoDatabase對象並且調用它的成員函式Open。
上面的這些方法都把DAO資料庫對象添加到工作區的Databases集合中,並在數據上建立一個連線。以後需要構造CDaoRecordset,CDaoTableDefCDaoQueryDef來操縱連線上的資料庫,要向它們的構造函式傳送CDaoDatabase對象的指針。使用完連線之後,要調用成員函式Close並撤消CDaoDatabase對象。Close會關閉所有沒有關閉的記錄集。
在工作區級支持資料庫的事務處理。參閱類CDaoWorkspace的成員函式BeginTrans,CommuitTrans和Rollback。有關更詳細的信息,請參閱在線上文檔“Visual C++程式設計師指南”中的“DaoWorkspace:管理事務”。
ODBC連線
建議在使用ODBC數據源時把外部表連到一個Microsoft Jet資料庫(.MDDB)。有關更詳細的信息,請參閱在線上文檔“Visual C++程式設計師指南”中的“DAO擴展:處理外部數據源”。
收集
每個資料庫都擁有自己的表定義、查詢定義、記錄集和關係對象的收集。類CDaoDatabase提供了操縱這些對象的成員函式。
注意:
上述對象存儲在DAO中,而不是存儲在ODBC對象中。MFC提供了支持表定義、查詢定義和記錄集對象的類,但沒有支持關係對象的類。
#include <afxdao.h>

相關詞條

熱門詞條

聯絡我們