在VISUAL C 中用ADO进行数据库编程.pdf

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在VISUAL C 中用ADO进行数据库编程

在Visual C++中用ADO进行数据库编程 1. 生成应用程序框架并初始化OLE/COM 库环境 创建一个标准的MFC AppWizard(exe)应用程序,然后在使用 ADO 数据库的 InitInstance 函数中初始化OLE/COM 库 (因为ADO 库是一个COMDLL 库)。 本例为: BOOLCAdotestDlg::OnInitDialog() { ::CoInitialize(NULL);//初始化OLE/COM 库环境 } 程序最后要调用 ::CoUninitialize();//释放程序占用的COM 资源。 另外: m_pRecordset-Close(); 注意!!!不要多次关闭!!!!!!!!!!!! m_pConnection-Close(); m_pRecordset NULL; m_pConnection NULL; 2. 引入ADO 库文件 使用ADO前必须在工程的stdafx.h 文件最后用直接引入符号#import 引入ADO库文 件,以使编译器能正确编译。代码如下: #import C:\Program Files\common files\system\ado\msado15.dll no_namespace rename(EOF,adoEOF) ADO 类的定义是作为一种资源存储在ADODLL(msado15.dll)中,在其内部称为类型 库。类型库描述了自治接口,以及C++使用的COMvtable接口。当使用#import 指令 时,在运行时Visual C++需要从ADODLL 中读取这个类型库,并以此创建一组C++ 头文件。这些头文件具有.tli 和.tlh 扩展名,读者可以在项目的目录下找到这两个文件。在 C++程序代码中调用的ADO 类要在这些文件中定义。 程序的第三行指示ADO对象不使用名称空间。在有些应用程序中,由于应用程序中的 对象与ADO 中的对象之间可能会出现命名冲突,所以有必要使用名称空间。如果要使用 名称空间,则可把第三行程序修改为:rename_namespace(AdoNS)。第四行代码将ADO 中的EOF(文件结束)更名为adoEOF,以避免与定义了自己的EOF 的其他库冲突。 3.利用智能指针进行数据库操作 在 CaboutDlg 头文件中定义两个ADO 智能指针类实例,并在对话框中加入一个 ListCtrl。 classCAdotestDlg :publicCDialog { _ConnectionPtrm_pConnection; _RecordsetPtrm_pRecordset; ClistCtrlm_List; } ADO 库包含三个智能指针:_ConnectionPtr、_CommandPtr 和_RecordsetPtr。 _ConnectionPtr 通常被用来创建一个数据连接或执行一条不返回任何结果的SQL 语句,如 一个存储过程。 _CommandPtr 返回一个记录集。它提供了一种简单的方法来执行返回记录集的存储过程和 SQL 语句。在使用_CommandPtr 接口时,可以利用全局_ConnectionPtr 接口,也可以在 _CommandPtr 接口里直接使用连接串。_RecordsetPtr 是一个记录集对象。与以上两种对象 相比,它对记录集提供了更多的控制功能,如记录锁定、游标控制等。 在使用ADO程序的事件响应中OnButton1加入以下代码: voidCAdotestDlg::OnButton1() { m_List.ResetContent(); m_pConnection.CreateInstance(_uuidof(Connection));//初始化Connection 指针 m_pRecordset.CreateInstance(_uuidof(Recordset));//初始化Recordset 指针 try { m_pConnection-Open(DSN ADOTest,,,0);//连接叫作ADOTest 的ODBC 数据源 //注意:这是连接不需要用户ID 或密码的open 函数 // 否则形式为 -Open(DSN test;uid sa;pwd 123;,,,0); // 执行SQL 语

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档