2024年4月19日发(作者:)
广工大学城
15
物联网
4 Wisdom
整理(原文档来源:
/wxlcx/article/details/4872053
)
VC MFC实现SQL数据库ADO连接(完整版)
关于vc6.0中实现ADO SQL数据库连接的文章网上虽然很多,但大多写的很繁琐,对于我们这样的
菜鸟来说,还是很希望有一篇简单化的文章的。希望跟我一样的菜鸟们学得开心!
源代码文件链接:
/s/1eR9icyY
概述:
要在一个vc工程中实现数据库的连接,最好的方式是在新建一个用于连接数据库的类比如
ADOConn,需要连接数据库的时候将这个类实例化就可以了。
操作:新建一个ADOConn的对象,比如ADOConn ac;。然后再引用些对象就可以实现相应的操
作了。
实践过程:
(一) 目的:封装一个自己的类。
在vc6.0中新建一个基于对话框的mfc工程,然后点击菜单栏->插入->类(mfc类)。
然后在“类的类型”中选择Generic Class,名称为ADOConn。
此后会在vc左边视窗的“Source Files”中多出一个的文件,在"Header
Files"中多出一个“ADOCon.h”的文件。
如果是用VS2013来创建工程的情况:
VS2013中添加类:
·1·
广工大学城
15
物联网
4 Wisdom
整理(原文档来源:
/wxlcx/article/details/4872053
)
右击myMFC(新建的项目)——添加——类—— MFC类。
(二)打开ADOConn.h(即编辑ADOConn类的头文件)
(1)在第一行加入(用于vc支持ado连接)
#import "C:Program FilesCommon " no_namespace
rename("EOF","adoEOF") rename("BOF","adoBOF")
//不要命名空间,重命名EOF为adoEOF,rename的意思就是改名了,rename("EOF","adoEOF")将EOF
改名为adoEOF,以免和C语言里的EOF重名。
这句话意味使用动态连接库文件,里面就有ADO.
如果存在问题:用VS2010的C++导入ADO导入不了,提示无法打开源文件”的问题。
解决办法很简单:
在生成菜单--- 重新生成 --- 即可。
原因是:
当编译器遇到#import语句时,它会为引用组件类型库中的接口生成包装类,#import语句实际上
相当于执行了API涵LoadTypeLib()。
#import语句会在工程可执行程序输出目录中产生两个文件,分别为*.tlh(类型库头文件)及
*.tli(类型库实现文件),它们分别为每一个接口产生智能指针,并为各种接口方法、枚举类型,CLSID
等进行声明,创建一系列包装方法。在没有经过编译器编译之前,文件还没有生成,所以,会出现错误
提示。
(2)在class ADOConn类体中添加如下代码
public:
// 定义变量
_ConnectionPtrm_pConnection;
_RecordsetPtrm_pRecordset;
// 初始化—连接数据库
void OnInitADOConn();
// 执行查询
_RecordsetPtr&GetRecordSet(_bstr_tbstrSQL);
// 执行SQL语句,Insert Update _variant_t
BOOL ExecuteSQL(_bstr_tbstrSQL);
void ExitConnect();
·2·
发布评论