问一个ADO连接数据库方面的问题,请哪位大虾帮帮忙!

fall1979 2005-01-10 08:00:07
我用ADO连接SQL Server数据库,使用的控件是TADOConnection,代码如下:

TADOConnection *adoTemp;
adoTemp=new TADOConnection(Application);
adoTemp->LoginPrompt=false;
adoTemp->ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=TestData;Data Source=192.168.0.120;User ID=sa;Password=123";
try
{
adoTemp->Open();
}
catch(...)
{
Application->MessageBox("用户登录失败!","系统提示",MB_ICONWARNING+MB_OK);
}

现在遇到这样一个问题:如果SQL Server数据库所在机器的Windows系统登录密码和客户端软件所在机器的Windows登录密码不一样,则执行adoTemp->Open()的时候可能出错。但是,客户端机器通过网上邻居访问过数据库所在机器的后,则执行adoTemp->Open()肯定能成功。
请问有什么方法能解决这个问题吗?因为不可能每台客户端都先访问一下数据库服务器,这样有点不太实际。
...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lidawen 2005-01-11
  • 打赏
  • 举报
回复
up
fall1979 2005-01-11
  • 打赏
  • 举报
回复
哪位凶台帮帮忙啊!着急用啊!
fall1979 2005-01-11
  • 打赏
  • 举报
回复
楼上的,我又看了一下我安装的SQL Server在安全性方面的身份验证模式是:SQL Server和Windows的混合模式啊!
土著巫师 2005-01-11
  • 打赏
  • 举报
回复
1、SQL SERVER安装后,把SQL SERVER服务端和客户端网络实用工具里的Named Pipes(命名管道)连接方式禁用掉试试。
2、如果SQL SERVER 2K在WIN2003和XP上安装,一定要打上SQL SERVER 的SP3。
lurel 2005-01-10
  • 打赏
  • 举报
回复
跟安装SQL SERVER有关系,你的SQL SERVER没设成混合验证模式,改过来就可以了

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧