vc中使用ado方式操作access數(shù)據(jù)庫

vc中使用ado方式操作access數(shù)據(jù)庫

ID:34726780

大小:153.18 KB

頁數(shù):20頁

時間:2019-03-10

vc中使用ado方式操作access數(shù)據(jù)庫_第1頁
vc中使用ado方式操作access數(shù)據(jù)庫_第2頁
vc中使用ado方式操作access數(shù)據(jù)庫_第3頁
vc中使用ado方式操作access數(shù)據(jù)庫_第4頁
vc中使用ado方式操作access數(shù)據(jù)庫_第5頁
資源描述:

《vc中使用ado方式操作access數(shù)據(jù)庫》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在工程資料-天天文庫

1、vc++中使用ado方式操作access數(shù)據(jù)庫ADO(ActiveXDataObject)是Microsoft數(shù)據(jù)庫應用程序開發(fā)的新接口,是建立在OLEDB之上的高層數(shù)據(jù)庫訪問技術,即使你對OLEDB,COM不了解也能輕松對付ADO,因為它非常簡單易用,甚至比你以往所接觸的ODBCAPI、DAO、RDO都要容易使用,并不失靈活性。本文詳細地介紹在VisualC++開發(fā)環(huán)境下如何使用ADO來進行數(shù)據(jù)庫應用程序開發(fā),并給出示例代碼。為了使讀者朋友都能測試本例提供的代碼,我們采用Access數(shù)據(jù)庫,您可以直接在我們提供的示例代碼中找到這個test.mdb。程序編

2、譯運行后的效果如圖一所示圖一、ADO操作ACESS數(shù)據(jù)庫的界面效果圖一、實現(xiàn)方法萬事開頭難,任何一種新技術對于初學者來說最重要的還是"入門",掌握其要點。讓我們來看看ADO數(shù)據(jù)庫開發(fā)的基本流程吧!它的基本步驟如下:(1)初始化COM庫,引入ADO庫定義文件(2)用Connection對象連接數(shù)據(jù)庫(3)利用建立好的連接,通過Connection、Command對象執(zhí)行SQL命令,或利用Recordset對象取得結(jié)果記錄集進行查詢、處理。(4)使用完畢后關閉連接釋放對象。下面我們將詳細介紹上述步驟并給出相關代碼。1、COM庫的初始化我們可以使用AfxOleI

3、nit()來初始化COM庫,這項工作通常在CWinApp::InitInstance()的重載函數(shù)中完成,請看如下代碼:BOOLCADOTest1App::InitInstance(){ AfxOleInit(); ......}2、用#import指令引入ADO類型庫為了引入ADO類型庫,需要在項目的stdafx.h文件中加入如下語句:#import"c:programfilescommonfilessystemadomsado15.dll"no_namespacerename("EOF","adoEOF")這一語句有何作用呢?其最終作用同我們已經(jīng)十分熟

4、悉的#include類似,編譯的時候系統(tǒng)會為我們生成msado15.tlh,ado15.tli兩個C++頭文件來定義ADO庫。需要讀者朋友注意的是:您的開發(fā)環(huán)境中msado15.dll不一定在這個目錄下,請按實際情況修改;在編譯的時候可能會出現(xiàn)如下警告,對此微軟在MSDN中作了說明,并建議我們不要理會這個警告:msado15.tlh(405):warningC4146:unaryminusoperatorappliedtounsignedtype,resultstillunsigned。3、創(chuàng)建Connection對象并連接數(shù)據(jù)庫為了首先我們需要添加一個指

5、向Connection對象的指針_ConnectionPtrm_pConnection,下面的代碼演示了如何創(chuàng)建Connection對象實例及如何連接數(shù)據(jù)庫并進行異常捕捉:BOOLCADOTest1Dlg::OnInitDialog(){ CDialog::OnInitDialog(); HRESULThr; try {  hr=m_pConnection.CreateInstance("ADODB.Connection");///創(chuàng)建Connection對象  if(SUCCEEDED(hr))  {   hr=m_pConnection->Open("

6、Provider=Microsoft.Jet.OLEDB.4.0;   DataSource=test.mdb","","",adModeUnknown);///連接數(shù)據(jù)庫   //上面一句中連接字串中的Provider是針對ACCESS2000環(huán)境的,對于ACCESS97,   //需要改為:Provider=Microsoft.Jet.OLEDB.3.51;  } } catch(_com_errore)///捕捉異?!  CStringerrormessage;  errormessage.Format("連接數(shù)據(jù)庫失敗!rn錯誤信息:%s",e.

7、ErrorMessage());  AfxMessageBox(errormessage);///顯示錯誤信息 }在這段代碼中我們是通過Connection對象的Open方法來進行連接數(shù)據(jù)庫的,下面是該方法的原型:HRESULTConnection15::Open(_bstr_tConnectionString,_bstr_tUserID,_bstr_tPassword,longOptions);上述函數(shù)中參數(shù)ConnectionString為連接字串;參數(shù)UserID是用戶名;參數(shù)Password是登陸密碼;參數(shù)Options是連接選項,用于指定Conn

8、ection對象對數(shù)據(jù)的更新許可權,一般情況下Options可以是

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。