注意VC中地址要以\\表示!!!!!获取的字符串要修改
学了几天ADO方法,今天也写一写教程~
时间2012年10月20日
环境:
操作系统:win7-
编译器:VS2008
数据库:SQL
说明:
SQl
http://pan.baidu.com/share/link?shareid=88166&uk=1343091770
第一步:
安装数据库。
Win7
安装方法是首先将上述连接地址的程序打开,选着解压目的文件夹,如图1.1
图1.1
解压完成后,进入目录:F:\SQLEVAL\x86\setup,找到setupsql.exe,右键选择属性,兼容性中选择“以兼模式运行这个程序”和“以管理员身份运行此程序”,然后双击安装就行,安装过程中进行到图1.2时,设置如图1.2
图1.2
“下一步”进入图1.3
在图1.3中设置的密码要记住了,因为vs2008连接时要用,这里的密码就设置为“sa”了,然后继续。。。。。。。。
将上面提供的SQL
这里为方便后面编程验证,在Person数据库中创建一个LoginUser表:create
Id
Name
Password
);
到这里数据库就准备好了
第二步,VS2008编程ADO连接SQL
首先新建一个MFC工程,笔者选择单文档的,然后就是向工程内添加新的类,用于连接数据库,类名自己定义,笔者定义为CADOEx。
导入ADO库:在stdafx.h文件头添加
#import
添加好后,添加三个变量:
//
_ConnectionPtr
继续添加两个函数:
//
BOOL
然后创建连接对象实例和创建命令对象实例
在CADOEx类的构造函数CADOEx()函数中添加如下代码:(可以照搬)
CADOEx::CADOEx(void)
{
//创建连接对象实例
HRESULT
if(!SUCCEEDED(hr))
{
AfxMessageBox("创建连接对象实例失败!");
}
//创建命令对象实例
hr
if(!SUCCEEDED(hr)){
AfxMessageBox("创建命令对象失败");
}
}
创建连接对象实例后:连接数据库,调用实例
Open函数的参数写法有很多方法下面给的方法是:不通过DSN对SQL
“其中Server是SQL服务器的名称(可以是127.0.0.1),DATABASE是库的名称(这里用刚才建的数据库Person)”
在ConnectDB(void)函数中添加
BOOL
{
/*
HRESULT
*/
HRESULT
if
{
AfxMessageBox("连接到数据库失败!");
return
}
return
}
在执行更新操作函数ExecuteNotSelSQL(CString
BOOL
{
try
{
_variant_t
vResult.vt
vResult.scode
//设置关联的Connection对象
m_PCmd->ActiveConnection
//SQL命令
m_PCmd->CommandText
//执行命令
m_pRs
}
catch
{
//显示错误信息
AfxMessageBox(e.ErrorMessage());
return
}
return
}
现在开始编程实现VS2008连接SQL
void
{
CListView::OnInitialUpdate();
CADOEx
if(ado.ConnectDB()){
AfxMessageBox("数据库连接成功");
//在Person数据库loginUser表中插入一条记录,loginUser表的定义见上文
CString
ado.ExecuteNotSelSQL(strSQL);
AfxMessageBox("插入了一条记录进loginUser表中");
}
else{
AfxMessageBox("数据库连接失败!");
}
//
//
}
然后编译项目,运行程序,就可以了
完成。