VC連接Access數(shù)據(jù)庫:[3]DAO方法
本篇分享DAO連接Access數(shù)據(jù)庫的方法中記錄集類的使用,這種方法和上篇經(jīng)驗(yàn)(vc連接access數(shù)據(jù)庫: [2]MFC ODBC方法)講到的方法非常相似。DAO方法的優(yōu)點(diǎn)是不必要配置數(shù)據(jù)源,而可以
本篇分享DAO連接Access數(shù)據(jù)庫的方法中記錄集類的使用,這種方法和上篇經(jīng)驗(yàn)(vc連接access數(shù)據(jù)庫: [2]MFC ODBC方法)講到的方法非常相似。DAO方法的優(yōu)點(diǎn)是不必要配置數(shù)據(jù)源,而可以直接設(shè)置數(shù)據(jù)庫的路徑。
新建MFC工程
我們繼續(xù)使用前幾篇經(jīng)驗(yàn)中的數(shù)據(jù)庫。新建一個(gè)MFC工程。新建一個(gè)基于CDaoRecordset類的CAccessLink類。
點(diǎn)擊OK,跳轉(zhuǎn)數(shù)據(jù)源選擇頁面,默認(rèn)是設(shè)置DAO數(shù)據(jù)源的路徑,我嘗試了一下,選擇桌面上的數(shù)據(jù)庫,提示失敗信息。查資料說是,這是DAO版本的問題,暫時(shí)也沒有時(shí)間去換新的版本,就選擇ODBC數(shù)據(jù)源。
同樣我們打開AccessLink.h文件,也會(huì)發(fā)現(xiàn),編譯器自動(dòng)生成了與數(shù)據(jù)庫字段相關(guān)聯(lián)的變量。我們?cè)谠擃^文件中添加#include "afxdb.h"。
接著我們?cè)趯?duì)話框類中添加AccessLink.h頭文件,在初始化函數(shù)中添加以下代碼(代碼和上一篇經(jīng)驗(yàn)中基本上是一樣的,因?yàn)閙_AccessLink成員變量只在初始化函數(shù)中使用,所以可以定義為局部的)
CAccessLink m_AccessLink; if (!m_(AFX_DB_USE_DEFAULT_TYPE)) { AfxMessageBox("打開數(shù)據(jù)庫失?。?); return FALSE; } if (!m_()) { AfxMessageBox("數(shù)據(jù)庫不能上傳記錄!"); return FALSE; } m_(); m_AccessLink.m_Age 0; m_AccessLink.m_Name "xiha"; m_AccessLink.Update();
我們運(yùn)行程序,打開桌面上的數(shù)據(jù)庫文件,發(fā)現(xiàn)插入了數(shù)據(jù)。
補(bǔ)充:隱藏主對(duì)話框
之前提到過,隱藏主對(duì)話框的方法是:將應(yīng)用程序類中InitInstance()函數(shù)中的()語句注釋起來,或者換成非模態(tài)對(duì)話框。