为何连接本地的sql server2000都连不上

bborn 2008-06-21 12:52:05
本地的sql server2000 别的程序连接都没问题

一个mfc窗口程序 sql ser 用windows身份验证 和 windows和sql混合验证 都试过了
都连不上 下面是全部代码
#import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "EndOfFile")


CoInitialize(NULL);
HRESULT hr;
_ConnectionPtr pConn;
_CommandPtr pCommand;
try
{
//_bstr_t Conn= "Provider=SQLOLEDB;Password=;Persist Security Info=True;User ID=tiger;Initial Catalog=tiger;Data Source=127.0.0.1";
_bstr_t Conn= "SQLOLEDB;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=tiger;Data Source=(local);";

pConn.CreateInstance(_uuidof(Connection));
hr=pConn-> Open(Conn,_bstr_t( " "),_bstr_t( " "),adModeUnknown);
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format( L"连接数据库失败!\r\n错误信息:%s ",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
}

CoUninitialize();
...全文
43 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bborn 2008-06-21
如果是 windows 身份验证模式

如何去连接数据库
  • 打赏
  • 举报
回复
zhengq06 2008-06-21
后面那段抓异常的代码很有用,是我在CSDN上找到的一牛人写的.

希望对你有所帮助.
  • 打赏
  • 举报
回复
zhengq06 2008-06-21
HRESULT hr;
try
{
hr=m_pConnection.CreateInstance("ADODB.Connection");

if(SUCCEEDED(hr))
{
hr=m_pConnection->Open("Provider=SQLOLEDB;Data Source=222.247.50.25,1433;Initial Catalog=IMFirewall;User ID=watch;Password=123321;", "", "", adModeUnknown);

// AfxMessageBox("连接数据库成功!!!");
}
}
catch(_com_error e)
{
_bstr_t bstrSource(e.Source());
_bstr_t bs = _bstr_t(" Error: ")
+ _bstr_t(e.Error())
+ _bstr_t(" Msg: ")
+ _bstr_t(e.ErrorMessage())
+ _bstr_t(" Description: ")
+ _bstr_t(e.Description());

// AfxMessageBox(bs + bstrSource);
}
  • 打赏
  • 举报
回复
zaodt 2008-06-21
捕获的错误提示是什么?


e.Description()


看看,然后根据错误提示分析问题。


到底是连接字符串有问题?

还是用户名密码有问题?

还是数据库服务器没有启动?

  • 打赏
  • 举报
回复
发帖
数据库

3976

社区成员

VC/MFC 数据库
社区管理员
  • 数据库
加入社区
帖子事件
创建了帖子
2008-06-21 12:52
社区公告
暂无公告