vc 连接数据库

来源:百度知道 编辑:UC知道 时间:2024/05/21 10:39:17
我用vc连接数据库的时候,一切工作都按照书上照做的,但是在调用下面函数的时候,总是提示不存在活拒绝访问:
void ADOConn::OnInitADOConn()
{
::CoInitialize(NULL);
try
{
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=students;Data Source=.";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
}

我的服务器名称为:ZHANGKEFA\USERZHANG,要连接数据库为students,用户名sa,密码123,请问为什么会出现这种情况啊,郁闷死了!

用ADO连接数据库是要创建数据源的,具体做法请自己查看,很简单。
bstr_t strConnect="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=students;Data Source=.";
然后将你创建数据源的名称赋给 data source;
最后因为你的数据库有用户名和密码,所以还有参数需要设置,给你一个列子吧

connect(){
::CoInitialize(NULL);
con.CreateInstance("ADODB.Connection");
res.CreateInstance("ADODB.Recordset");
try{
con->Open("Data Source=snmp;","","",adModeUnknown);//连接数据库
}
catch(_com_error &e)
{
cout<<e.ErrorMessage();
}
我的数据源为snmp,对应数据库是采用windows登录验证的,中间两个空引号分别对应用户名和密码。

连接字符串有问题。

_bstr_t strConnect="Provider=SQLOLEDB.1;Data Source=ZHANGKEFA\USERZHANG;database=students;uid=sa;pwd=123";