永发信息网

ADO中数据访问核心类及其作用

答案:1  悬赏:40  手机版
解决时间 2021-03-01 00:43
  • 提问者网友:绫月
  • 2021-02-28 19:11
ADO中数据访问核心类及其作用
最佳答案
  • 五星知识达人网友:渡鹤影
  • 2021-02-28 20:05
ADO数据访问提供的七个对象:
Connection
Command
Parameter
Recordset
Field
Property
Error

其中,ADO的核心是Connection,Recordset和Command

首先用Connection与服务器建立连接,然后用Command对象执行命令,如查询、更新等。用Recordset对象来操作和查看查询结果。就是这么简单。

举个C++中ADO访问数据库的简单例子:
#include
#include
using namespace std;
//导入ADO动态链接库,必须的
#import "c:\program files\common files\system\ado\msado15.dll"no_namespace rename("EOF","adoEOF")

void main()
{
_ConnectionPtr m_pConnection; //创建智能指针,必须的
m_pConnection.CreateInstance(__uuidof(Connection)); //或 m_pConnection.CreateInstance("ADODB.Connection");
CoInitialize(NULL); //初始化COM,必须的
try
{
//连接字符串,Student为数据库名
m_pConnection->ConnectionString="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=Student";

m_pConnection->Open(" "," "," ",adModeUnknown); //调用Open方法
cout<<"1"< }
catch(_com_error e) //捕获连接异常
{
cout<<"数据库初始化错误! "< return ;
}
cout<<"连接成功!"<
_RecordsetPtr pRst(__uuidof(Recordset));

pRst=m_pConnection->Execute("select * from student",NULL,adCmdText);//使用Execute方法,student为表名

if(!pRst>adoEOF)
pRst>MoveFirst();
else
{
cout<<"表内数据为空"< return;
}
// 读入库中各字段并加入列表框中
_variant_t var;
string strName;
while(!pRst>adoEOF)
{
var = pRst>GetCollect("Name");
if(var.vt != VT_NULL)
strName = (LPCSTR)_bstr_t(var);
pRst>MoveNext();
}

//关闭
pRst->Close();
m_pConnection->Close();
pRst.Release();
m_pConnection->Release();

CoUninitialize(); //释放COM

}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯