为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 数据库 正文

VC++ MFC ADO操作1:连接数据库(mfc链接access)

三叶资源网 2022-08-31 21:18:50 数据库 955 ℃ 0 评论

ADO必备知识

ADO中最重要的对象有三个:Connection、Command和Recordset,它们分别表示连接对象、命令对象和记录集对象。

_ConnectionPtr接口返回一个记录集或一个空指针。通常使用它来创建一个数据连接或执行一条不返回任何结果的SQL语句,如一个存储过程。使用_ConnectionPtr接口返回一个记录集不是一个好的使用方法。对于要返回记录的操作通常用_RecordserPtr来实现。而用_ConnectionPtr操作时要想得到记录条数得遍历所有记录,而用_RecordserPtr时不需要。

_CommandPtr接口返回一个记录集。它提供了一种简单的方法来执行返回记录集的存储过程和SQL语句。在使用_CommandPtr接口时,你可以利用全局_ConnectionPtr接口,也可以在_CommandPtr接口里直接使用连接串。如果你只执行一次或几次数据访问操作,后者是比较好的选择。但如果你要频繁访问数据库,并要返回很多记录集,那么,你应该使用全局_ConnectionPtr接口创建一个数据连接,然后使用_CommandPtr接口执行存储过程和SQL语句。

_RecordsetPtr是一个记录集对象。与以上两种对象相比,它对记录集提供了更多的控制功能,如记录锁定,游标控制等。同_CommandPtr接口一样,它不一定要使用一个已经创建的数据连接,可以用一个连接串代替连接指针赋给_RecordsetPtr的connection成员变量,让它自己创建数据连接。如果你要使用多个记录集,最好的方法是同Command对象一样使用已经创建了数据连接的全局_ConnectionPtr接口,然后使用_RecordsetPtr执行存储过程和SQL语句。

使用ADO前的准备

1.引入ADO库文件

#import "C:\Program Files\common files\system\ado\msado15.dll" no_namespace rename("EOF","EndOfFile") rename("BOF","FirstOfFile")

2.初始化OLE/COM环境

::CoInitialize(NULL);// 初始化OLE/COM库环境

ADO连接MS-SQLSERVER

_ConnectionPtr pMyConnect=NULL;
HRESULT hr=pMyConnect.CreateInstance(__uuidof(Connection)));
if(FAILED(hr))return;
_bstr_t strConnect="Provider=SQLOLEDB; Server=server_name;Database=database_name; uid=user_name; pwd=password;";
//连接数据库,一定要使用try和catch,否则即使出错也无法知道错误
try{pMyConnect->Open(strConnect,"","",NULL);}
catch (_com_error &e)
{
	AfxMessageBox(e.Description());
}

使用上述方法就可以连接到你的数据库了。这里sailor建议一定要使用catch,否则如果错误了就会返回类似R6010的错误,调试都不知道问题在哪里。

Tags:

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
SignatureQQ飞车易语言支持库阳光车生活appLinux复数计算限制上网开心宝贝窗口信息变量数据交换access数据库查询图片格式转换器安卓协议极速文件分割类ExDUI视频教程文字游戏源码QQ加好友接口SysDateTimePick32按键精灵自绘滚动条E2EE分布式任务
最新评论