- 1、本文档共111页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VC 第7章 数据库操作技术
ADOConn类的头文件如下: class ADOConn { public: //添加一个指向Connection对象的指针 _ConnectionPtr m_pConnection; //添加一个指向Recordset对象的指针 _RecordsetPtr m_pRecordset; public: ADOConn(); virtual ~ADOConn(); //初始化--连接数据库 void OnInitADOConn(); //执行查询 _RecordsetPtr GetRecordSet(_bstr_t bstrSQL); //执行SQL语句 BOOL ExecuteSQL(_bstr_t bstrSQL); //断开数据库连接 void ExitConnect(); }; 接下来介绍各个成员函数是如何实现的。 (1)首先介绍ADO类中用于连接数据库的成员函数OnInitADOConn,在该函数中调用ADO连接对象的Open方法连接数据库。代码如下: void ADOConn::OnInitADOConn() { //初始化OLE/COM库环境 ::CoInitialize(NULL); try { //创建connection对象 m_pConnection.CreateInstance(ADODB.Connection); //设置连接字符串 _bstr_t strConnect=Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=vcjsdq;Data Source=.; //SERVER和UID,PWD的设置根据实际情况来设置 m_pConnection-Open(strConnect,,,adModeUnknown); } //捕捉异常 catch(_com_error e) { AfxMessageBox(e.Description()); //显示错误信息 }} (2)GetRecordset成员函数用来打开记录集,在该函数中调用ADO记录集对象的Open方法打开记录集。代码如下: _RecordsetPtr ADOConn::GetRecordSet(_bstr_t bstrSQL) { try { //连接数据库,如果connection对象为空,则重新连接数据库 if(m_pConnection==NULL) OnInitADOConn(); //创建记录集对象 m_pRecordset.CreateInstance(__uuidof(Recordset)); //取得表中的记录 m_pRecordset-Open(bstrSQL,m_pConnection.GetInterfacePtr(), adOpenDynamic,adLockOptimistic,adCmdText); } catch(_com_error e) { e.Description(); } //返回记录集 return m_pRecordset; } (3)CloseRecordset成员函数用来关闭记录集,代码如下: void ADOConn::CloseRecordset() { if(m_pRecordset-GetState() == adStateOpen) //判断当前的记录集状态 m_pRecordset-Close(); //关闭记录集 } (4)ExitConn成员函数用来关闭数据库连接,代码如下: void ADOConn::ExitConnect() { //关闭记录集和连接 if(m_pRecordset!=NULL) m_pRecordset-Close(); m_pConnection-Close(); } (5)ExecuteSQL成员函数用来执行不返回记录集的SQL语句,如insert、Update、Delete,代码如下: BOOL ADOConn::ExecuteSQL(_bstr_t bstrSQL) { _variant_t RecordsAffected; try { //是否已连接数据库 if(m_pConnection==NULL)
您可能关注的文档
- UG基本用法及常用快捷键-20140708.doc
- TYPE C 3.1双边同轴半自动制程方案.ppt
- U23项目基因健康服务终端介绍2013版.ppt
- unit 7《what’s the highest mountain in the world》专题复习课件.ppt
- Unit 6 An old man tried to move the mountains 阶段专题复习.ppt
- Unit-6-An-old-man-tried-to-move-the-mountains阶段专题复习课件-(新版)人教新目标版.ppt
- Unit3 A taste of English humour 复习.ppt
- Unit2 现代大学英语精读2.ppt
- Unity基础.doc
- units 1-6语法结构及练习.ppt
最近下载
- 演出合同范本13篇.pdf VIP
- 佳能EOS6D使用说明.docx
- 世茂集团工程招投标技术标管理制度.docx
- 长安铃木吉姆尼电路图.pdf
- 美国材料与试验协会A480-A480M-2016_平扎不锈钢及耐热钢中板、薄板及钢带的一般要求[1](中文版).doc
- 地铁保洁服务投标方案(技术标).docx
- 2022年湖南衡阳市衡东县人大代表服务中心选调考试备考试题及答案解析.docx VIP
- 3完整版本.1固相反应.ppt VIP
- 2025高考英语时事热点阅读专练10 自然和宇宙探索(学生版+解析版).docx
- 2023年北京中考数学重难题型01新定义创新型综合压轴问题(13-22年最后一题+真题10道模拟30道)含详解.pdf VIP
文档评论(0)