最近的專案經常會與access資料庫打交道,所以在這裡進行一下常用技巧的總結。
(1)建立和刪除資料庫連線
1、初始化ole函式庫
if (!afxoleinit())
afxenablecontrolcontainer();
2 、定義資料庫連線,連線資料庫檔案
cadoconnection m_adoconnection;if (m_adoconnection.isopen())//判斷資料庫連線是否已經開啟,如果開啟就關閉
m_adoconnection.close();
return m_adoconnection.connectaccess(pfilename); //根據檔案路徑連線資料庫
3 關閉資料庫連線
if(m_adoconnection.isopen() == true) //判斷資料庫連線是否已經開啟,如果開啟,就關閉
m_adoconnection.close();
(2)運算元據庫
1、 根據sql語句查詢資料庫
步驟1:定義ado記錄集物件
//如果資料庫連線沒有開啟,則返回
if(!m_adoconnection.isopen())
//定義乙個ado記錄集物件,用資料庫連線指標作為構造函式引數
cadorecordset m_adorecordset(&m_adoconnection);
步驟2:定義sql語句,用記錄集物件進行查詢,迴圈該記錄集的所有記錄,得到記錄集中每條記錄的每個字段值
//定義sql語句
cstring strsql;
strsql.format("select * from table_name where filed_name = %lf", (double)value);
//用sql語句查詢,得到記錄集
if(m_adorecordset.open(strsql))
delete pbuf;
}//移動到下一條記錄
m_adorecordset.movenext();
}//關閉記錄集
m_adorecordset.close();
}
步驟3:關閉記錄集
注意:當字段的型別為日期/時間時,用coledatetime型別變數接收;要接收影象資料,將字段型別設定為ole型別物件
2 、向資料庫新增資料內容
步驟1:用資料集物件開啟sql語句
cstring strsql;
strsql.format("select * from table_name ");
padorecordset->open(strsql);
步驟2:開啟新增標識
padorecordset->addnew()
步驟3:為每個字段賦值
padorecordset->putcollect("date", date);
如果是二進位制的資料要錄入資料庫:
步驟4:更新記錄集
padorecordset->update()
步驟5:更新完後,關閉記錄集
padorecordset->close();
4 常用的函式
得到記錄集中記錄數:
m_adorecordset.getrecordcount()
vc訪問ACCESS資料庫
在現代軟體開發中,資料庫技術被越來越廣泛應用,很多專案都存在著大量的資料需要儲存,通常都會採用資料庫來儲存這些資料。最初,資料庫廠商推出乙個新的資料庫產品時,相應的,他會為程式設計師提供一套訪問該資料庫的介面,即api。不同的資料庫廠商提供的訪問介面是不一樣的,這樣在使用乙個新的資料庫時,就要學習一...
VC使用ADO物件控制ACCESS資料庫的訪問
vc使用ado物件控制access資料庫的訪問 邵盛松 2009 2 28 以下 沒有進行封裝,carlos antollini已經對ado物件進行封裝,他的 可以在程式中可直接呼叫 新建乙個mfc對話方塊 1初始化 解釋 使用ado物件,就要引用使用msado15.dll中的變數和函式 在stda...
VC 下使用ADO連線Access資料庫
import c program files common files system ado msado15.dll no namespace rename namespace adodb rename eof adoeof 在mfc中可以用 afxoleinit 非mfc環境中用 coinitia...