日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
操作ADO.NETAccess數(shù)據(jù)庫(kù)基本步驟總結(jié)

學(xué)習(xí)ADO.NET時(shí),你可能會(huì)遇到ADO.NET Access問(wèn)題,這里將介紹ADO.NET Access問(wèn)題的解決方法,在這里拿出來(lái)和大家分享一下。在示例程序中我們?nèi)圆捎迷瓗?kù)結(jié)構(gòu),數(shù)據(jù)庫(kù)名Demo.mdb,庫(kù)內(nèi)表名DemoTable,表內(nèi)字段名為Name(姓名)和Age(年齡)的兩個(gè)字段,來(lái)構(gòu)造示例程序操作所需的ADO.NET Access數(shù)據(jù)庫(kù),這也和上兩篇文章的示例源碼中的庫(kù)結(jié)構(gòu)相兼容。

在新都等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都營(yíng)銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè)公司,新都網(wǎng)站建設(shè)費(fèi)用合理。

下面讓我們看看ADO數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)使用的基本步驟及方法:

首先,要用#import語(yǔ)句來(lái)引用支持ADO的組件類型庫(kù)(*.tlb),其中類型庫(kù)可以作為可執(zhí)行程序(DLL、EXE等)的一部分被定位在其自身程序中的附屬資源里,如:被定位在msado15.dll的附屬資源中,只需要直接用#import引用它既可??梢灾苯釉赟tdafx.h文件中加入下面語(yǔ)句來(lái)實(shí)現(xiàn):

 
 
  1. #import "c:\program files\common files\system\ado\msado15.dll" \  
  2. no_namespace \  
  3. rename ("EOF", "adoEOF")      

     #T#其中路徑名可以根據(jù)自己系統(tǒng)安裝的ADO支持文件的路徑來(lái)自行設(shè)定。當(dāng)編譯器遇到#import語(yǔ)句時(shí),它會(huì)為引用組件類型庫(kù)中的接口生成包裝類,#import語(yǔ)句實(shí)際上相當(dāng)于執(zhí)行了API涵數(shù)LoadTypeLib()。#import語(yǔ)句會(huì)在工程可執(zhí)行程序輸出目錄中產(chǎn)生兩個(gè)文件,分別為*.tlh(類型庫(kù)頭文件)及*.tli(類型庫(kù)實(shí)現(xiàn)文件),它們分別為每一個(gè)接口產(chǎn)生智能指針,并為各種接口方法、枚舉類型,CLSID等進(jìn)行聲明,創(chuàng)建一系列包裝方法。語(yǔ)句no_namespace說(shuō)明ADO對(duì)象不使用命名空間,rename ("EOF", "adoEOF")說(shuō)明將ADO中結(jié)束標(biāo)志EOF改為adoEOF,以避免和其它庫(kù)中命名相沖突。

其次,在程序初始過(guò)程中需要初始化組件,一般可以用CoInitialize(NULL);來(lái)實(shí)現(xiàn),這種方法在結(jié)束時(shí)要關(guān)閉初始化的COM,可以用下面語(yǔ)句CoUnInitialize();來(lái)實(shí)現(xiàn)。在MFC中還可以采用另一種方法來(lái)實(shí)現(xiàn)初始化COM,這種方法只需要一條語(yǔ)句便可以自動(dòng)為我們實(shí)現(xiàn)初始化COM和結(jié)束時(shí)關(guān)閉COM的操作,語(yǔ)句如下所示: AfxOleInit();

接著,就可以直接使用ADO的操作了。我們經(jīng)常使用的只是前面用#import語(yǔ)句引用類型庫(kù)時(shí),生成的包裝類.tlh中聲明的智能指針中的三個(gè),它們分別是_ConnectionPtr、_RecordsetPtr和_CommandPtr。下面分別對(duì)它們的使用方法進(jìn)行介紹:

_ConnectionPtr智能指針,通常用于打開(kāi)、關(guān)閉一個(gè)庫(kù)連接或用它的Execute方法來(lái)執(zhí)行一個(gè)不返回結(jié)果的命令語(yǔ)句(用法和_CommandPtr中的Execute方法類似)。
——打開(kāi)一個(gè)庫(kù)連接。先創(chuàng)建一個(gè)實(shí)例指針,再用Open打開(kāi)一個(gè)庫(kù)連接,它將返回一個(gè)IUnknown的自動(dòng)化接口指針。代碼如下所示:

 
 
  1. _ConnectionPtr m_pConnection;  
  2. // 初始化COM,創(chuàng)建ADO連接等操作  
  3. AfxOleInit();  
  4. m_pConnection.CreateInstance(__uuidof(Connection));  
  5.  
  6. // 在ADO操作中建議語(yǔ)句中要常用try...catch()來(lái)捕獲錯(cuò)誤信息,  
  7. // 因?yàn)樗袝r(shí)會(huì)經(jīng)常出現(xiàn)一些意想不到的錯(cuò)誤。jingzhou xu  
  8. try                   
  9. {   
  10.  // 打開(kāi)本地Access庫(kù)Demo.mdb  
  11.  m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.mdb","","",adModeUnknown);  
  12. }  
  13. catch(_com_error e)  
  14. {  
  15.  AfxMessageBox("數(shù)據(jù)庫(kù)連接失敗,確認(rèn)數(shù)據(jù)庫(kù)Demo.mdb是否在當(dāng)前路徑下!");  
  16.  return FALSE;  
  17. }      ——關(guān)閉一個(gè)庫(kù)連接。如果連接狀態(tài)有效,則用Close方法關(guān)閉它并賦于它空值。代碼如下所示:   
  18.  
  19. if(m_pConnection->State)  
  20.         m_pConnection->Close();  
  21. m_pConnectionNULL;        

新聞標(biāo)題:操作ADO.NETAccess數(shù)據(jù)庫(kù)基本步驟總結(jié)
分享網(wǎng)址:http://www.dlmjj.cn/article/djcppdd.html