Vc呼叫ado訪問資料庫

2021-04-14 00:05:26 字數 1667 閱讀 3344

vc

主要提供了兩個型別來實現這一功能:

_connectionptr m_connection; //

實現資料庫的連線

_recordsetptr m_prs;//

訪問記錄集

訪問資料庫,主要包含以下幾項功能:

1、開啟資料庫連線

_bstr_t strcnn = strcon;

trycatch(_com_error)

_variant_t vdispatch((idispatch*)m_connection);

m_connection->addref();

2、向記錄新增記錄

cstring strcmdtext = "select * from tblmapheader";

trycatch(_com_error &e)

long rgindices[1];

variant rgf;

variant rgv;

colevariant fld[6], val[6];

safearraybound bound;

int num = 6;

try

m_prs1->addnew(&rgf,&rgv);

boochanged = true;

}catch (_com_error &e)

m_prs1->close();

注:也可寫成下面的格式,只是

sql資料變為

insert

即可。

3、修改記錄

strsql="updatetblgroundbaseinfosettrantype=''where groundno='"+m_strgroundno+"'";

tmprs.createinstance(__uuidof(recordset));

tmprs->cursorlocation = aduseclient;

tmprs->open((lpctstr)strsql,vdispatch,adopenkeyset,adlockoptimistic,adcmdunkown);

注:或寫成

m_prs->update(&rgf,&rgv);

同新增記錄相同 4、

刪除記錄

cstring strins;

strins="delete from tmpstatbyground";

m_prs.createinstance(__uuidof(recordset));

m_prs->cursorlocation = aduseclient;

m_prs->open((lpctstr)strins, vdispatch, adopenkeyset,

adlockoptimistic, adcmdunknown);

5、檢索記錄集

cstring strcmdtext = "select * from tblmapheader where sznum='"+snum+"'";

_recordsetptr prs;

trycatch(_com_error &e)

if(prs->recordcount > 0)

prs->close();

6、關閉資料庫連線

m_connection.release();

關於blob型別欄位的使用

ADO 訪問資料庫

using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using system.window...

ADO訪問資料庫

介紹vc用ado訪問資料庫全攻略,介紹了vc用ado來訪問資料庫的各個物件及各方法,很經典,也很實用,很值得一看。正文一 ado概述 ado是microsoft為最新和最強大的資料訪問範例 ole db 而設計的,是乙個便於使用的應用程式層介面。ado 使您能夠編寫應用程式以通過 ole.db 提供...

VC資料庫程式設計 ado

介紹 vc用ado訪問資料庫全攻略,介紹了vc用ado來訪問資料庫的各個物件及各方法,很經典,也很實用,很值得一看。讀者評分 10 評分次數 3 正文一 ado概述 ado是microsoft為最新和最強大的資料訪問範例 ole db 而設計的,是乙個便於使用的應用程式層介面。ado 使您能夠編寫應...