詳解MFC使用ADO連線SQLServer資料庫

2021-09-12 02:19:36 字數 2840 閱讀 6691

_connectionptr主要是乙個連線介面,取得與資料庫的連線。它的連線字串可以是自己直接寫,也可以指向乙個odbc dsn。

_connectionptr pconn;

if (failed(pconn.createinstance("adodb.connection")))

cstring strsrc;

strsrc="driver=sql server;server=";

strsrc+="suppersoft";

strsrc+=";database=";

strsrc+="mydb";

strsrc+=";uid=sa;pwd=";

cstring strsql = "insert into student(no,name,***,address) values(3,"aaa","male","beijing")";

_variant_t varsrc(strsrc);

_variant_t varsql(strsql);

_bstr_t bstrsrc(strsrc);

if (failed(pconn->open(bstrsrc,"","",-1)))

colevariant vtoptional((long)disp_e_paramnotfound,vt_error);

pconn->execute(_bstr_t(strsql),&vtoptional,-1);

pconn.release();

afxmessagebox("ok!");

5、使用_recordsetptr介面(以連線sql server為例)

_recordsetptr pptr;

if (failed(pptr.createinstance("adodb.recordset")))

cstring strsrc;

strsrc="driver=sql server;server=";

strsrc+="210.46.141.145";

strsrc+=";database=";

strsrc+="mydb";

strsrc+=";uid=sa;pwd=";

strsrc+="sa";

cstring strsql = "select id,name,gender,address from personal";

_variant_t varsrc(strsrc);

_variant_t varsql(strsql);

if(failed(pptr->open(varsql,varsrc,adopenstatic,adlockoptimistic,adcmdtext)))

while(!pptr->getadoeof())

pptr->close();

pptr.release();

6、使用_commandptr介面

_commandptr介面返回乙個recordset物件,並且提供了更多的記錄集控制功能,以下**示例了使用_commandptr介面的方法:

**11:使用_commandptr介面獲取資料

_commandptr pcommand;

_recordsetptr prs;

pcommand.createinstance(__uuidof(command));

pcommand->activeconnection=pconn;

pcommand->commandtext="select * from student";

pcommand->commandtype=adcmdtext;

pcommand->parameters->refresh();

prs=pcommand->execute(null,null,adcmdunknown);

_variant_t varvalue = prs->getcollect("name");

cstring strvalue=(char*)_bstr_t(varvalue);

6、關於資料型別轉換由於com物件是跨平台的,它使用了一種通用的方法來處理各種型別的資料,

因此cstring 類和com物件是不相容的,我們需要一組api來轉換com物件和c++型別的資料。_vatiant_t和_bstr_t就是這樣兩種物件。它們提供了通用的方法轉換com物件和c++型別的資料。

詳解MFC使用ADO連線SQLServer資料庫

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

MFC通過ADO連線 SQL 2005

1 新建乙個類,型別為generic class,名稱為cdatabase 2 新增匯入檔案 import c program files common files system ado msado15.dll no namespace rename eof adoeof rename bof ad...

MFC使用ADO連線SQL Server資料庫

1.首先,要用 import語句來引用支援ado的元件型別庫 tlb 其中型別庫可以作為可執行程式 dll exe等 的一部分被定位在其自身程式中的附屬資源裡,如 被定位在msado15.dll的附屬資源中,只需要直接用 import引用它既可。可以直接在stdafx.h檔案中加入下面語句來實現 i...