這裡介紹一下簡單的資料庫程式設計,c++利用ado連線access資料庫,進行簡單的插入、刪除、讀取、修改操作。利用ado連線aceess和連線ms—sql大同小異,只是連線驅動等細節不同而已。
下面就介紹資料庫程式設計的基本步驟
第一步:載入ado類
第二步:初始化ole庫
第三步:連線開啟資料庫
第四步:組裝sql語句,並利用智慧型指標執行sql語句
下面詳細介紹所需**~~~
1、在stdafx.h中新增
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("eof", "adoeof")
如果載入失敗的話,去c:\program files\common files\system\ado檢視是否有msado15.dll,對於xp以上系統該檔案都是存在的,如果做產品時害怕使用者電腦可能沒有這個檔案,可以將msado15.dll打包到程式中,這是要保證msado15.dll存在於程式當前目錄,同時修改上句**為
#import "msado15.dll" no_namespace rename ("eof", "adoeof")
2、初始化ole庫,在initinstance()函式中增加ole初始化函式,
if(!afxoleinit())//這就是初始化com庫
3、在引入ado並初始化成功com庫後,就可以使用智慧型指標了。
_connectionptr m_pconnection; //連線,可以呼叫execute函式執行sql語句
_recordsetptr m_precordset;//結果集,可以掉用open函式執行sql語句
_commandptr m_pcommand; //命令物件,可以呼叫execute執行sql語句
//連線資料庫
hresult hr;
try}
catch(_com_error e)///捕捉異常
4進行資料庫操作,資料庫操作通過connectionptr,recordsetptr、commandptr都可以實現。
通過connectionptr:
_variant_t recordsaffected;
cstring ssql = _t("insert into stu values (20,20)");
m_pconnection->execute((_bstr_t)ssql,&recordsaffected,adcmdtext);
通過commandptr:
_commandptr pcommand;
_recordsetptr prs;
pcommand.createinstance(__uuidof(command));
pcommand->activeconnection=m_pconnection;
pcommand->commandtext="select * from stu";
pcommand->commandtype=adcmdtext;
pcommand->parameters->refresh();
prs=pcommand->execute(null,null,adcmdunknown);
while(!prs->adoeof)
通過recordsetptr:
m_precordset.createinstance(__uuidof(recordset));
cstring strsql="select * from middle";
m_precordset->open((_bstr_t)strsql,(idispatch*)m_pconnection,adopendynamic,adlockoptimistic,adcmdtext);
while(!m_precordset->adoeof)//遍歷所有記錄
m_precordset->close();
連線ACCESS資料庫
1 匯入命名空間空間 system.data.oledb 2 建立指向資料庫的連線 建立連線要用到system.data.oledb命名空間中的類 oledbconnection。通過以下語句可以完成對本地資料庫的連線工作 string strconnect provider microsoft.j...
access資料庫連線
string strconnection provider microsoft.jet.oledb.4.0 strconnection data source e accesstest data.mdb 裡用的是?路徑 oledbconnection objconnection new oledbc...
Access資料庫連線
access資料庫的連線,2000和2007版本有差別。access2000的連線字串為 1 2 3 4 str.format text provider microsoft.jet.oledb.4.0 persist security info false data source s szdata...