MFC ADO链接SQL Server 2008 封装好的类

MFC中使用ADO操作各类数据库的封装类,包括MySql、Access、Oracle、MSSql 演示程序可以在此处下载:http://download.youkuaiyun.com/detail/php_fly/6033883 相信这个程序对菜鸟很有帮助! 注释:部分注释! 开发环境:VS2008 数据库:Access和Mysql 相关链接: VC++ ADO 连接 mysql:http://www.cppblog.com/current/archive/2009/07/24 阅读详情

<h3>刚开始学习MFC ,上网查了下与SQLServer相关的操作,主要是增删查改,自己给封装好,这里贴出了给自己备个份,顺便共享下,嘻嘻</h3>
在stdafx.h文件中需要添加#import ".\ADO\msado15.dll" no_namespace rename("EOF", "adoEOF") rename("BOF", "adoBOF") 我是自己改的路径将msado15.dll文件考到自己的路径下的,可以使用:C:\Program Files\Common Files\System\ado\msado15.dll这是windows自带的
#pragma once
//AdoDatabase.h文件
class AdoDatabase
{
public:
	AdoDatabase(void);
	~AdoDatabase(void);

	_ConnectionPtr m_pConnection;//连接数据库智能指针
	_variant_t RecordsAffected;//操作完成后所影响的行数
	_RecordsetPtr m_pRecordset; //记录集对象,执行返回结果存储的容器

	// 连接数据库
	BOOL ConnectDB(void);
	// 关闭数据库
	BOOL CloseConn(void);
	// 执行sql语句
	BOOL ExecuteSQL(CString sqlstr,CString typeStr);
	// 向数据库中插入数据
	BOOL InsertStrData(CString sqlstr);
	// 更新数据库数据
	BOOL UpdateStrData(CString sqlstr);
	// 查询数据库数据
	BOOL SelectStrData(CString sqlstr);
	// 删除
	BOOL DeleteStrData(CString sqlstr);
	// 查询语句执行
	BOOL ExecuteSelSQL(CString sqlstr);
};

//AdoDatabase.cpp

#include "StdAfx.h"
#include "AdoDatabase.h"


AdoDatabase::AdoDatabase(void)
{
}


AdoDatabase::~AdoDatabase(void)
{
}

// 连接数据库
BOOL AdoDatabase::ConnectDB(void)
{
	::CoInitialize(NULL);
	try
	{
		//m_pConnection.CreateInstance(__uuidof(Connection));
		//m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb","","",adModeUnknown);

		m_pConnection.CreateInstance(_T("ADODB.Connection"));//创建connections对象
		_bstr_t strConnect="Provider=SQLOLEDB.1;User ID=cqf;Password=123;Persist Security Info =false;Data Source=10.6.11.38,1433;Initial Catalog=lanmonitor";
		m_pConnection->Open(strConnect,"","",adModeUnknown);
	}
	catch(_com_error e)
	{
		CString errormessage;
		errormessage.Format("连接数据库失败!\r错误信息:%s",e.ErrorMessage());
		AfxMessageBox(errormessage);
		return -1;
	}

	return 0;
}


// 关闭数据库
BOOL AdoDatabase::CloseConn(void)
{
	if(m_pRecordset!=NULL)//如果不为空则关闭数据集
	{
		m_pRecordset->Close();  
		m_pRecordset=NULL; 
	}
	if(m_pConnection->State)
	{
		m_pConnection->Close();
		m_pConnection=NULL; 
	}
	return 0;
}


// 执行sql语句
BOOL AdoDatabase::ExecuteSQL(CString sqlstr,CString typeStr)
{
	try
	{
		_bstr_t strCmd=sqlstr;//"INSERT INTO Employees(EmployeeID,FirstName,LastName,HireDate,City,Country) VALUES(10,'Mary','Williams','15/4/1993 12:00:00','New York','USA')";
		m_pConnection->Execute(strCmd,&RecordsAffected,adCmdText);
	}
	catch(_com_error &e)
	{
		AfxMessageBox(e.Description()+":"+typeStr);
		return -1;
	}
	return 0;
}

// 向数据库中插入数据
BOOL AdoDatabase::InsertStrData(CString sqlstr)
{
	return 	ExecuteSQL(sqlstr,"Insert!");
}


// 更新数据库数据
BOOL AdoDatabase::UpdateStrData(CString sqlstr)
{
	return ExecuteSQL(sqlstr,"Update!");
}


// 查询数据库数据
BOOL AdoDatabase::SelectStrData(CString sqlstr)
{
	 m_pRecordset.CreateInstance("ADODB.Recordset"); //为Recordset对象创建实例
	return  ExecuteSelSQL(sqlstr);
}



// 删除
BOOL AdoDatabase::DeleteStrData(CString sqlstr)
{
	return ExecuteSQL(sqlstr,"Select!");
}


// 查询语句执行
BOOL AdoDatabase::ExecuteSelSQL(CString sqlstr)
{
	try
	{
		_bstr_t strCmd=sqlstr;//"INSERT INTO Employees(EmployeeID,FirstName,LastName,HireDate,City,Country) VALUES(10,'Mary','Williams','15/4/1993 12:00:00','New York','USA')";
		m_pRecordset=m_pConnection->Execute(strCmd,&RecordsAffected,adCmdText);
	}
	catch(_com_error &e)
	{
		AfxMessageBox(e.Description());
		return -1;
	}
	return 0;
}





VS2010中MFC用ADO方式连接 SQL SERVER 2008 EXPRESS的步骤。 有三个个部分的内容:SQL SERVER的设置; 电脑的设置;MFC中用ADO接口进行访问。每个部分都有详细的说明。 阅读详情

相关推荐

VS2010+SQL Server2008 R2 学习中遇到的问题

1.SQL Server 2008 R2安装教程 链接 2.SQL Server 2008 R2登录时出现错误:provider命名管道提供程序,error40,无法连接SQL Server,错误2. 解决方法:链接 3. VS连接SQL Server 2008 R2测试 链接 //////////////////////////////////////////////...

Monster 414

MFC以ADO方式连接SQL数据库

::CoInitialize(0); //vc6以上用此语句初始 //创建数据库连接 m_pConnection.CreateInstance("ADODB.Connection"); m_pConnection->Open("Provider=SQLOLEDB.1; Server=10.8.100.34;Database=test; uid=st; pwd=st","",

陈先生的博客 648

数据库 sql与MFC的连接封装类 ADO

数据库 sql与MFC的连接封装 类 ADO 是用MFC做的,,该程序功能强大,健壮性很强,对于错误输入有提示,程序完全正确,解压既可以运行

在Visual C++中用ADO进行数据库编程

1. 生成应用程序框架并初始化OLE/COM库环境  创建一个标准的MFC AppWizard(exe)应用程序,然后在使用ADO数据库的InitInstance函数中初始化OLE/COM库(因为ADO库是一个COM DLL库)。本例为:  BOOL CAdotestDlg::OnInitDialog() {        ::CoInitialize(NULL); //初始化OLE/CO

沥泉博客 837

C++完整数据库SQLServer操作类(ODBC)

C++对SQLServer操作的可直接使用类,包括打开数据库,对数据库进行操作,获取数据等结合sql对数据库的全部操作,ODBC操作数据库

sqlServer-mfc读写封装的

封装的类可以直接读写 sqlServer 数据库。并附带如何配置SqlServer服务器的文档

VC学习笔记:ADO

步骤: 1.Import the ADO Dll#define INIGUID#import "C:/Program files/Common files/System/ADO/msado15.dll" no_namespace/rename_namespace("**") rename("","")uisng namespace **2.Initialize the COM

superstar162的专栏 1064

c++使用Ado方式连接Sql封装的类

c++使用Ado方式连接Sql封装的类,可以直接用该类执行SQL语句操作本地mdb文件或局域网中的SQL数据库

MFC中使用ADO进行数据库操作_人生几何_新浪博客

https://www.cnblogs.com/sunniflyer/p/4118956.html 数据库与数据库编程: 当前各种主流数据库有很多,包括Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCE...

人生几何的博客 388

MFC封装的ADO类

下载的ADO类,我做了许多修改,在Visual Studio 2013 C++ MFC(使用Unicode 字符集)测试通过,可以直接使用。

高通8155车机系统里,安卓和QNX是怎么‘打电话’的?聊聊HAB通信框架那些事

本文深入解析了高通8155车机系统中HAB通信框架如何实现安卓与QNX的高效协同。作为异构系统的通信桥梁,HAB通过共享内存和中断信号机制,在多媒体数据传输中展现出零拷贝、硬件加速等优势,成为智能座舱实现实时性与生态丰富性平衡的关键技术。

weixin_42715608的博客 382

MFC连接sql server2008数据库步骤

一.安装好vs2015和SQL Server 2008 R2(各版本区别不大)所以以我现有软件为基础向大家展示一下。 二. 先配置SQL Server 2008 R2 在右下角“开始”菜单中点击“所有程序”找到“SQL Server 2008 R2”点击找到“配置工具”找到“SQL Server配置管理器” 这里写图片描述 进入“SQL Server配置管理器”后找到“SQL Server服务”点击找到“SQL Server(SQLEXPRESS)”右单击选择“停止”关闭服务 然后点击“SQ

郭萌萌的博客 1947

【漆学军】MT4进阶到MT5速成之路(2)获取持仓

MT5在持仓获取上,要比MT4复杂些,分两部分,获取持仓和挂单采用了不同的方法。 一、获取持仓中的buy和sell单 int b=0;//获取buy单个数 int s=0;//获取sell单个数 double lot_total_buy=0;//获取持仓中buy单的总手数 double lot_total_sell=0;//获取持仓中sell单的总手数 for(int i=0; i<PositionsTotal(); i++) { ulong ticket=Positi

漆学军的编程笔记 1625

vs2008和SQL Server使用ADO连接方法

https://blog.youkuaiyun.com/a8082649/article/details/21108345 注意VC中地址要以\\表示!!!!!获取的字符串要修改 学了几天ADO方法,今天也写一写教程~ 时间2012年10月20日 环境: 操作系统:win7-64bit 编译器:VS2008 数据库:SQLServer2000 说明: SQlServer2000...

active2489595970的博客 588

新手避坑指南:从GEO数据库下载单细胞测序数据的5个关键步骤(附实操截图)

本文为单细胞测序数据下载新手提供5个关键避坑步骤,涵盖数据搜索准备、样本量评估、文件选择决策、元数据诊断及高效下载技术。通过实操截图和代码示例,帮助研究者快速锁定GEO数据库中的优质单细胞测序数据,避免常见错误。

weixin_30296405的博客 666

从脑电到脑机接口:EEG/ERP特征如何驱动你的下一个智能硬件项目(Arduino/树莓派实战)

本文详细介绍了如何利用EEG/ERP特征提取技术驱动智能硬件项目,涵盖从脑电信号采集到脑机接口实现的完整流程。通过Arduino和树莓派实战,展示了P300、N400等事件相关电位的应用,帮助开发者将学术理论转化为可编程的交互指令,适用于智能家居、医疗辅助等领域。

weixin_29279047的博客 383

MFC连接SQL2008(ADO)

MFC连接SQL2008(ADO) MFC连接SQL2008(ADO方式): 第一,导入动态链接库 #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") 第二,连接数据库 初始化COM组件: ::CoInitialize(NULL); 定

dangercheng的专栏 4651

python实现ECMS算法

ECMS(Equivalent Consumption Minimization Strategy)算法是一种用于混合动力汽车能量管理系统的优化策略。它通过计算等效油耗来平衡电池电量消耗和燃油消耗,从而优化整体能耗。以下是一个简单的Python实现,用于演示ECMS算法的基本思想。这个实现假设了一个简单的混合动力汽车模型,其中电池电量和燃油消耗是主要的优化目标。

weixin_45570158的博客 922

VC2008 ADO 连接SQL Server 2008 (ODBC)

以下代码部分为转载内容。在使用以下代码之前千万记得要先注册好自己连接的数据库,方法是进入“控制面板”,注册好OBDC数据源,具体方法网上查   http://news.ccidnet.com/art/32849/20100608/2081137_1.html VS2008中首先新建个基于Dialog的MFC应用程序,然后经过wizard生成的stdafx.h文件的末尾添加上#import "

5145

VASP+Multiwfn+VMD静电势计算与可视化全流程解析

静电势是表征分子与材料表面电荷分布的关键物理量,它通过求解泊松方程,将电子密度与原子核电荷在空间中的贡献结合起来,直观揭示体系的电子富集与缺失区域。这一性质在理解化学反应活性、分子间相互作用(如氢键、卤键)以及材料表面性质方面具有重要价值。在计算材料科学与量子化学领域,基于第一性原理计算获得高精度电子结构数据后,如何将其转化为可直观分析的静电势图,是连接理论计算与物理解释的关键技术环节。本文聚焦于构建一条高效、可控的端到端工作流,详细解析如何利用VASP进行高精度电子密度计算,通过专业波函数分析软件Mult

weixin_33733810的博客 431

advanced installer 打包Flutter的Windows程序安装包(基本打包、开机自启、定时自动检测升级、包含卸载程序)

advanced installer 打包Flutter的Windows程序安装包(基本打包、开机自启、定时自动检测升级、包含卸载程序)

qq_45634989的博客 2878

MFC中用c++语言实现连接SQLServer2008(附添加操作)

一.安装好vs2015和SQL Server 2008 R2(各版本区别不大)所以以我现有软件为基础向大家展示一下。二. 先配置SQL Server 2008 R2- 在右下角“开始”菜单中点击“所有程序”找到“SQL Server 2008 R2”点击找到“配置工具”找到“SQL Server配置管理器” - 进入“SQL Server配置管理器”后找到“SQL Server服务”点击找到“S

梅毒公子的博客 1万+

12、探索新型高能量密度材料:FOX-7的化学进展

本文全面探讨了新型高能量密度材料FOX-7的化学进展,包括其独特的分子结构、优异的热稳定性、光谱性质以及爆炸性能。对比传统高爆炸药RDX,FOX-7展现出更低的敏感性和更高的安全性。文章还介绍了FOX-7的合成方法、异构体研究、与其结构相关的化合物以及富氮高能材料的最新发展。通过实验和计算方法,研究人员不断优化这类材料的性能,以满足军事和工业领域的高要求。

sea99的博客 350

VS2010MFC中ADO连接SQL_Server2008续作之添加

https://wenku.baidu.com/view/8835423b43323968011c92cb.html

active2489595970的博客 269

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

上一篇: 访问修饰符(public protect 默认friendly private),protected与friendly的区别
下一篇: N皇后问题
fiempty
博客等级 码龄15年 3粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值