vc链接数据库和操作数据库的函数清单
这是我写的一个类,类名是ADOConn.cpp和ADOConn.h,主要作用就是把vc链接数据库和操作数据库的函数清单写在了这里面。把这个类加进vc中是可以直接运行的,你直接调用就行了。改一些路径,他可以对access,SqlServer等数据库进行很好的操作。
第一个是ADOConn.cpp
// ADOConn.cpp: implementation of the ADOConn class. 
/// 
 
#include "stdafx.h" 
#include "myshoujiDlg.h"     //主函数 
#include "ADOConn.h" 
 
#ifdef _DEBUG 
#undef THIS_FILE 
static char THIS_FILE[]=__FILE__; 
#define new DEBUG_NEW 
#endif 
/// 
// Construction/Destruction 
 
 
ADOConn::ADOConn() 

 

 
ADOConn::~ADOConn() 

 

 
void ADOConn::OnInitADOConn()                                      //以调用access为例,其实调用SqlServer等也是一样的

  ::CoInitialize(NULL);     //初始化COM组件 
  try 
  { 
             m_pConnection.CreateInstance("ADODB.Connection"); 
        _bstr_t strConnect="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=shouji.mdb";             //链接数据库,这里是shouji数据库,可以根据具体情况改 
        m_pConnection->Open(strConnect,"","",adModeUnknown); 
  } 
  catch(_com_error e) 
  { 
    AfxMessageBox(e.Description()); 
  } 

 
_RecordsetPtr& ADOConn::GetRecordSet(_bstr_t bstrSQL) 

        try 
  { 
    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; 

 
BOOL ADOConn::ExecuteSQL(_bstr_t bstrSQL)        //再打开数据库后,执行Sql语句 

  _variant_t RecordsAffected; 
  try 
  { 
                if(m_pConnection==NULL) 
              OnInitADOConn(); 
                m_pConnection->Execute(bstrSQL,NULL,adCmdText); 
    return true; 
  } 
  catch(_com_error e) 
  { 
    e.Description(); 
    return false; 
  } 

 
void ADOConn::ExitConnect()                    //退出链接 

        if(m_pRecordset!=NULL) 
    m_pRecordset->Close(); 
  m_pConnection->Close(); 
  ::CoUninitialize(); 
}
第二个是ADOConn.h
// ADOConn.h: interface for the ADOConn class. 
 
 
#if !defined(AFX_ADOCONN_H__A2B6E8CE_2220_4830_95F8_2911D1EAC453__INCLUDED_) 
#define AFX_ADOCONN_H__A2B6E8CE_2220_4830_95F8_2911D1EAC453__INCLUDED_ 
#import "C:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF") 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
class ADOConn     

public: 
        _ConnectionPtr m_pConnection; 
  _RecordsetPtr m_pRecordset; 
public: 
  ADOConn(); 
  virtual ~ADOConn(); 
 
  void OnInitADOConn(); 
        _RecordsetPtr&GetRecordSet(_bstr_t bstrSQL); 
        BOOL ExecuteSQL(_bstr_t bstrSQL); 
  void ExitConnect(); 
 
}; 
 
#endif // !defined(AFX_ADOCONN_H__A2B6E8CE_2220_4830_95F8_2911D1EAC453__INCLUDED_) 
希望对你有所帮助。
     本文转自阿龙哥 51CTO博客,原文链接:http://blog.51cto.com/ililong/284962,如需转载请自行联系原作者

vc链接数据库和操作数据库的函数清单相关推荐

  1. 如何使用LINQ链接数据库并操作数据库

    1.在App_Code下面添加新项"LINQ to SQL 类" 2.打开该类,设置Name属性(例如MyLinqDB)和Connection属性 3.服务器资源管理器内添加数据库 ...

  2. mybatisplus 操作另一个数据库的数据_c#连接sql数据库以及操作数据库

    1.概述 http://ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库: 第二,建立SqlCommand对象,负责SQL语句的执行 ...

  3. python处理数据库_python操作数据库

    操作mysql image.png db_config = { 'user': 'root', 'password': 'qwe123', 'db': '数据库名', 'charset': 'utf8 ...

  4. C# 连接SQL数据库以及操作数据库

    1.概述 ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库: 第二,建立SqlCommand对象,负责SQL语句的执行和存储过程的调 ...

  5. python处理完数据导入数据库_python操作数据库之批量导入

    python操作数据库之批量导入 Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够把用其他语言制作的 ...

  6. [转]VC++下使用ADO操作数据库

    (1).引入ADO类 1 2 3 #import "c:program filescommon filessystemadomsado15.dll" no_namespace re ...

  7. larval 操作mysql数据库_laravel操作数据库

    要开启相应数据库的pdo扩展. 配置数据库连接 在larave中连接数据库的配置地方有两个 1..env文件 2.修改config/database.php文件 如下: 注意此时要开启MySQL,也就 ...

  8. java clob类型怎么插入数据库_java操作数据库中clob类型 之插入和查询

    一.插入 1)对于clob字段,首先插入empty_clob(): String sql = " insert into batchintfloadlog (centercode,filen ...

  9. jdbc连接oracle查询数据库,JDBC连接Oracle数据库,并操作数据库,查询表

    JDBC连接Oracle数据库 protected void doPost(HttpServletRequest request, HttpServletResponse response) thro ...

  10. vbs mysql 读数据库_VBS操作数据库与控件

    要是你想选择自己用vbs实现这个要求,需要弄清楚三个问题: 1.怎么用vbs连接数据库 2.怎么查询变量归档 3.怎么用vbs操作控件 第一个问题主要是写好连接字符串,可以看书或者在网上搜教程,很简单 ...

最新文章

  1. 关系抽取论文总结(relation extraction)不断更新
  2. python 如何给matplotlib降级_Python如何使用Matplotlib的作图
  3. linux下如何使用有道词典
  4. python编程基础_月隐学python第2课
  5. Mac OS X下查看CPU信息
  6. Oracle9i OCM认证实践课考试的一些说明
  7. 升级 ubuntu_Ubuntu 19.04 已经到期!现有用户必须升级到 Ubuntu 19.10
  8. LeetCode MySQL 512. 游戏玩法分析 II
  9. 基于应用层自身反远程线程注入的研究
  10. glMatrixMode()函数
  11. document.createElement()的用法
  12. 【poj1995】快速幂
  13. Java的数据类型转换
  14. 网络编程:Socket编程从IPv4转向IPv6支持
  15. 工业机器人导轨 百度文库_最新工业机器人复习资料
  16. android 实现自动拍照,android实现定时拍照功能
  17. python pandas合并_python学习:pandas学习笔记(四)合并
  18. 自然语言处理基础技术之语义角色标注
  19. 智能硬件行业产品经理
  20. 基于java的springboot多用户商城(类淘宝京东)系统毕业设计springboot开题报告

热门文章

  1. 2019年10月全国程序员工资统计,一半以上的职位5个月没招到人~
  2. 程序员买房,买车,一个避不开的梗
  3. 帧同步分离逻辑层和渲染层_帧同步如何分离逻辑和渲染?
  4. python 开发公众号sdk_「公众号开发」基于Serverless架构Python实现公众号图文搜索...
  5. open函数_全!Python函数和文件操作合集(长文系列第三篇)
  6. 用php写一个user类,使用php怎么编写一个用户查询类
  7. java--idea-生成jar包的配置
  8. 主线程 唤醒_JAVA多线程--线程阻塞与唤醒
  9. C、C++实现 -- 字符串分割函数split
  10. Centos 7 安装 java、搭建 Jenkins