您的位置:首页 > 数据库

在VS2008中通过ADO方式连接SQLSERVER2005

2011-04-14 23:01 609 查看
很多要注意的地方 只要有一个小细节出错就会连错

大开SQL服务 远程连接还要大开SQL Brower

首先要引入ado动态链接库文件msado15.dll

no_namespace 声明不用命名空间

接着就是初始建立实例

最关键的是连接字符串

m_pConnection->Open("Driver=SQL Server;Server=CHOU-PC//SQLEXPRESS;DATABASE=chou;UID=sa;PWD=123456","","",adModeUnknown);
Driver为所需的连接驱动器 此处为"SQL Server“,大小写和空格都不能错 否则连接出错

Server为服务器,此处连接本机,不能用127.0.0.1,而必须用数据库的实例名字

即 主机名-PC//SQLEXPRESS 必须是两个斜杠,直接复制本机的实例名只有一个斜杠,也会导致出错

因为在代码中第一个斜杠为转义 这个很重要

DATABASE为连接的数据库名

UID为登陆的数据库用户名

PWD为用户名密码

adModeUnknown为默认缺省访问方式 该值为0

捕捉异常 e.Description()可以打印异常信息 查看异常信息可以帮助你找到错误

代码如下

#import "c:/program files/common files/system/ado/msado15.dll" no_namespace rename("EOF","adoEOF")
#include<iostream>
using namespace std;
void main()
{
CoInitialize(NULL);//注意要放在最开始
_ConnectionPtr m_pConnection;
HRESULT hr=m_pConnection.CreateInstance("ADODB.Connection");//
//m_pConnection.CreateInstance("ADODB.Connection");
if(FAILED(hr))
cout<<"Initialized failed."<<endl;
try
{
m_pConnection->Open("Driver=SQL Server;Server=CHOU-PC//SQLEXPRESS;DATABASE=chou;UID=sa;PWD=123456","","",adModeUnknown);
cout<<"ok"<<endl;
system("pause");
}
catch(_com_error e)
{ cout<<"error"<<
e.Description();
return ;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: