注意VC中地址要以\\表示!!!!!获取的字符串要修改

学了几天ADO方法,今天也写一写教程~

时间2012年10月20日

环境:

操作系统:win7- 64bit

编译器:VS2008

数据库:SQL Server 2000

说明:

SQl Server2000和win7 64bit 的有点不兼容,网上有很多sql server2000的下载,但安装时有些安装失败,提示无法安装数据库引擎,只能安装客户端(那就不要安装了),笔者安装的SQL Server2000的下载地址为:

http://pan.baidu.com/share/link?shareid=88166&uk=1343091770

第一步:

安装数据库。

Win7 64位的安装方法如下:

安装方法是首先将上述连接地址的程序打开,选着解压目的文件夹,如图1.1

图1.1

解压完成后,进入目录:F:\SQLEVAL\x86\setup,找到setupsql.exe,右键选择属性,兼容性中选择“以兼模式运行这个程序”和“以管理员身份运行此程序”,然后双击安装就行,安装过程中进行到图1.2时,设置如图1.2

图1.2

“下一步”进入图1.3


图1.3

在图1.3中设置的密码要记住了,因为vs2008连接时要用,这里的密码就设置为“sa”了,然后继续。。。。。。。。

将上面提供的SQL Server2000安装后,选择“开始”->“Mis....SQL Server”->“服务管理器”启动数据库,然后选择“企业管理器”,连接数据库,创建一个新的数据库Person,展开Person数据库,然后选择“查询分析器”,注意图1.4红色圈圈中,选择Person(这样才能操作Person数据库,不要想着用界面见表、添加数据了,SQL Server2000在win7 64bit下好像不能实现图形化操作,所以还是用查询语句,也就是SQL语句来实现数据操作吧,也练习一下sql语句)

图1.4

这里为方便后面编程验证,在Person数据库中创建一个LoginUser表:create table LoginUser(

Id int,

Name char(20),

Password char(20)

);

到这里数据库就准备好了

第二步,VS2008编程ADO连接SQL Server

首先新建一个MFC工程,笔者选择单文档的,然后就是向工程内添加新的类,用于连接数据库,类名自己定义,笔者定义为CADOEx。

导入ADO库:在stdafx.h文件头添加

#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")

添加好后,添加三个变量:

// 记录集对象

_RecordsetPtr m_pRs;

// 命令对象

_CommandPtr m_PCmd;

_ConnectionPtr m_pConnection;

继续添加两个函数:

// 连接数据库

BOOL ConnectDB(void);

// 执行更新操作

BOOL ExecuteNotSelSQL(CString strNotSelSQL);

然后创建连接对象实例和创建命令对象实例

在CADOEx类的构造函数CADOEx()函数中添加如下代码:(可以照搬)

CADOEx::CADOEx(void)

{

//创建连接对象实例

HRESULT hr = m_pConnection.CreateInstance(_uuidof(Connection));

if(!SUCCEEDED(hr))

{

AfxMessageBox("创建连接对象实例失败!");

}

//创建命令对象实例

hr = m_PCmd.CreateInstance(__uuidof(Command));

if(!SUCCEEDED(hr)){

AfxMessageBox("创建命令对象失败");

}

}

创建连接对象实例后:连接数据库,调用实例 m_pConnection的函数Open()

Open函数的参数写法有很多方法下面给的方法是:不通过DSN对SQL SERVER数据库进行连接

“其中Server是SQL服务器的名称(可以是127.0.0.1),DATABASE是库的名称(这里用刚才建的数据库Person)”

在ConnectDB(void)函数中添加

BOOL CADOEx::ConnectDB(void)

{

/*

HRESULT hr = m_pConnection->Open("Provider = SQLOLEDB.1; Data Source =HEHE-PC; Database = Person;","sa","sa",adModeUnknown);

*/

HRESULT hr = m_pConnection->Open("driver={SQL Server};Server=HEHE-PC;DATABASE=Person;UID=sa;PWD=sa","","",adModeUnknown);

if (!SUCCEEDED(hr))

{

AfxMessageBox("连接到数据库失败!");

return FALSE;

}

return TRUE;

}

在执行更新操作函数ExecuteNotSelSQL(CString strNotSelSQL)中添加如下代码,实现对数据库的更新:

BOOL CADOEx::ExecuteNotSelSQL(CString strNotSelSQL)

{

try

{

_variant_t vResult;

vResult.vt = VT_ERROR;

vResult.scode = DISP_E_PARAMNOTFOUND;

//设置关联的Connection对象

m_PCmd->ActiveConnection = m_pConnection;

//SQL命令

m_PCmd->CommandText = (_bstr_t)strNotSelSQL;

//执行命令

m_pRs = m_PCmd->Execute(&vResult,&vResult,adCmdText);

}

catch (_com_error& e)

{

//显示错误信息

AfxMessageBox(e.ErrorMessage());

return FALSE;

}

return TRUE;

}

现在开始编程实现VS2008连接SQL Server,在工程的***View类中的OnInitialUpdate(void)函数中添加以下代码:

void CAdo01View::OnInitialUpdate()

{

CListView::OnInitialUpdate();

CADOEx ado;

if(ado.ConnectDB()){

AfxMessageBox("数据库连接成功");

//在Person数据库loginUser表中插入一条记录,loginUser表的定义见上文

CString strSQL = "insert into loginUser values('12','来自VC','12')";

ado.ExecuteNotSelSQL(strSQL);

AfxMessageBox("插入了一条记录进loginUser表中");

}

else{

AfxMessageBox("数据库连接失败!");

}

// TODO: 调用GetListCtrl() 直接访问ListView 的列表控件,

//  从而可以用项填充ListView。

}

然后编译项目,运行程序,就可以了

完成。

vs2008和SQL Server使用ADO连接方法相关推荐

  1. JDBC连接数据库遇到的“驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。”问题解决方法

    JDBC连接数据库遇到的"驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接."问题解决方法! 时间:2018-12-20 本文章向大家介绍JDB ...

  2. 配置SQL Server 2005 远程连接(转)

    方法如下:  一.为 SQL Server 2005 启用远程连接 1. 单击"开始",依次选择"程序"."Microsoft SQL Server ...

  3. 关于解决驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“sun.security.validator.ValidatorException:

    首先 如果你是在访问一个网站,可以通过可以通过导入证书的方式解决该问题.或者跳过ssl证书验证.这些操作步骤,其他博主已经写的非常详细了.在这里不做赘述. 如果你只是单纯链接一个本地数据库,却莫名其妙 ...

  4. idea连接sql server报错:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

    idea连接sql server报错:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接 运行环境:IDEA2020.1:JDK1.8:SQL SERVER2005: ...

  5. 驱动程序无法使用安全套接字层(SSL)加密建立到SQL Server的安全连接

    报错:ERROR c.a.d.p.DruidDataSource$CreateConnectionThread [Druid-ConnectionPool-Create-1218864105] cre ...

  6. JDBC连接SQLServer2012报错:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。

    目录 一.场景描述: 二.解决方法(实测通过) 三.注意事项 四.测试运行效果 错误信息:The server selected protocol version TLS10 is not accep ...

  7. 无法连接到 SQL Server 数据库 的解决方法

    问题:  出现了如下错误选定的数据存储区出现问题,原因可能是服务器名称或凭据无效,或者权限不足.也可能是未启用角色管理器功能造成的.请单击下面的按钮,以重定向到可以选择新数据存储区的页.下面的消息可能 ...

  8. SQLServer JDBC 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

    此方法适用于JDK1.8,应用场景常见于window server操作系统 网上有不少人遇到过使用jdbc连接sqlserver出错的情况,错误信息为 错误一: 驱动程序无法通过使用安全套接字层(SS ...

  9. SQL Server 2005远程连接和外围应用配置器修复

    开通SQL Server 2005远程连接 1.1         配置远程连接 默认情况下, SQLServerExpressEdition 2005 和 SQL Server 2005 开发版不允 ...

最新文章

  1. python调包侠_拒绝调包侠,不需要高级算法和数据结构技巧
  2. 打开组策略时提示inetres.admx管理模板解析出错解决方法
  3. 《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之31---LBS基于BREW的位置服务...
  4. flash破解工具/flash decompiler
  5. 黑客技术的网站(❤️可以自学,建议收藏❤️)
  6. windows桌面待办事项_有没有一款使用简单的电脑桌面待办事项提醒软件
  7. “老师,我写着写着就 强制交卷了……”
  8. 深度学习中的损失函数总结以及Center Loss函数笔记
  9. RuiJi Scraper基础 – RuiJi表达式模型
  10. pycharm引用python_在Python/Pycharm中找不到引用“xxx”
  11. 计算机与艺术就业怎样,就业报告:这些艺术类好就业,这些难就业!
  12. LAMP之apache调优
  13. Linux内核相关常见面试题
  14. 图像函数 imagecreatetruecolor()和imagecreate()的异同点
  15. python数据读写 panda(to_csv和read_csv)【读取dat文件】【写入dat文件】【非csv文件并且有多列数据时】
  16. 啦啦外卖小程序上传提示43003解决办法
  17. opencv无获取摄像头视频帧(YUV打开导致失败)
  18. 计算机学院少女节条幅,女生节条幅大战又打响了!哪个高校条幅标语最撩人 网友酸了...
  19. 易语言版{大智慧/分析家/飞狐交易师}DLL插件接口开发模块(beta),自定义股票软件公式扩展函数...
  20. CTF比赛必备常用工具

热门文章

  1. mysql数据库 set类型_MYSQL数据库数据类型
  2. 电脑主板接口_电脑主板接口大全
  3. php系统如何连接数据库服务器,php如何连接数据库服务器
  4. STM32F103单片机ADC功能使用
  5. 图解:一句“我喜欢你”在网络中经历了什么
  6. Redis常用命令及命名规范
  7. HDU-1874畅通工程续( 最短路)
  8. 300WLP、AFLW2000-3D、Biwi Kinect Head Pose Database姿态数据的读取
  9. 学习template算法(template matching)以及改进(二)
  10. Java经典设计模式-创建型模式-单例模式(Singleton)