我的程序客户为什么登录一下服务器才能连接上?100分求助

haohaohappy 2004-09-01 02:59:17
我连接SQL2000数据库的方法为
ConnectString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=chang;pwd=XXX;Data Source=SERVER"

If DBtest.State <> adStateClosed Then DBtest.Close
DBtest.ConnectionString = ConnectString
DBtest.CursorLocation = adUseClient
DBtest.ConnectionTimeout = 5
DBtest.Open
我自己编程序时连接服务器都没问题,但为什么打包给别的计算机装完,用我这个程序之前要先人工登录一下SERVER这台服务器连接才能成功呢?
而且登录一次后后面就不用再登录了,除非重启机器,就又得人工登录一下服务器才行,有什么解决方法么?
请大家帮忙
并且我服务器上配置安全性中的身份验证是设为SQL SERVER 和 Windows(s), 而且我在服务器上建立了一个用户chang,密码和连接字符串里的相同
...全文
159 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
haoK 2004-09-04
  • 打赏
  • 举报
回复
打开服务器网络实用工具
看看常规里面启用的协议是否只有命名管道(命名管道好像需要先登陆服务器),
把tcp/ip加上

在客户端打开客户端网络实用工具(没有的话装sql server客户端工具)
把tcp/ip加上
haohaohappy 2004-09-04
  • 打赏
  • 举报
回复
我都已经做,我把你们说的能做的都做了!!!
1。我服务器上的版本是SP3的。
2。属性--安全性--身份验证--选择"sql server和windows",我一开始就是这么设置的。
3。GUEST是不能开的,这是公司规定。
4。安装SQLSERVER2000时是选的混合认证方式,而且登录是用户名和密码也都是正确的。
为什么还是有这么个问题,为什么?、???


急急急急急急急急
急急急急急急急急
急急急急急急急急
急急急急急急急急
fycsoft 2004-09-04
  • 打赏
  • 举报
回复
服务器:我的电脑->管理->本地用户和组->用户中添加用户及密码(客户端登陆WINDOWS时的用户及密码)
zjcxc 元老 2004-09-03
  • 打赏
  • 举报
回复
2.将你的sql的身份验证模式设置为"sql server和windows"
企业管理器--右键SQL实例--属性--安全性--身份验证--选择"sql server和windows"
zjcxc 元老 2004-09-03
  • 打赏
  • 举报
回复
1.检查你的SQL有没有打补丁,没有的话要打上补丁,检查的方法是在查询分析器中运行:
select @@version
如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上.

SQL补丁下载:
全部补丁的位置
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=9032f608-160a-4537-a2b6-4cb265b80766
应该安装的是
http://download.microsoft.com/download/d/d/e/dde427eb-0296-4eac-a47c-d11a66b03816/chs_sql2ksp3.exe

注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装
haohaohappy 2004-09-03
  • 打赏
  • 举报
回复
楼上的,我只是在运行程序时才出现此错误,服务器上的GUEST必须是要关闭的,不能打开。我只要登录一下服务器共享的文件夹,程序再运行就能连上服务器了,你再指教。
老宛 2004-09-01
  • 打赏
  • 举报
回复
-------------------------------------------------------------------
对策四:为WinXP添加NetBEUI协议。其实,直接添加NetBEUI协议对于解决不能互访的问题有时反而更为简单一些,而且它可以解决上面提到的启用防火墙的问题。Win98安装时会自动安装NetBEUI协议,但由于WinXP已经不再提供对NetBEUI协议的技术支持,因此只能手工添加了。

找出WinXP安装光盘,进入“Valueadd\Msft\Net\Netbeui”文件夹下,这里有Nbf.sys、Netbeui.txt、Netnbf.inf共3个文件,先将Nbf.sys文件复制到本机的“Windows\System32\Drivers”文件夹下(这里的本机指安装了WinXP的那台电脑),再将Netnbf.inf文件复制到本机的“Windows\INF”文件夹下,Netbeui.txt文件可有可无。不过, INF文件夹具有隐藏属性,用户需要先在WinXP下的“工具|属性”窗口中选择显示文件才可以看到该目录。
老宛 2004-09-01
  • 打赏
  • 举报
回复
-------------------------------------------------------------------
对策二:检查Win2000/XP中是否存在安全策略限制。有时,Win2000/XP“聪明”过了头,虽然我们已经启用了Guest账户,从Win98中却仍然无法访问Win2000/XP,这时就要从“控制面板|管理工具|本地安全策略|本地策略|用户权利指派”中找到“从网络访问此计算机”或者“拒绝从网络访问这台计算机”,然后检查一下其中是否出现了Guest账户或者其他对应的账户,然后根据不同情况进行添加或者删除即可。
-------------------------------------------------------------------
对策三:停用本地连接上的防火墙。防火墙是充当网络与外部世界之间的保卫边界的安全系统,微软在WinXP中为用户提供了一个内置的Internet连接防火墙(ICF),启用后可以限制某些不安全信息从外部进入内部网络。不过,如果您是在本地连接上启用了这个防火墙,那么就会造成工作组之间无法互访,出现“XXX无法访问”、“您可能没有权限使用网络资源”、“请与这台服务器的管理员联系以查明您是否有访问权限”、“找不到网络路径”等类似的提示,此时请停用本地连接的防火墙屏蔽。
老宛 2004-09-01
  • 打赏
  • 举报
回复
这个是windows网络设置的问题
对策一:在Win2000/XP中启用Guest用户。在Win2000/XP系统安装之后会缺省建立两个用户账户,即Administrator(系统管理员)和Guest(来宾账户),所有在本地计算机没有被分配到账户的用户都将默认使用Guest账户,该账户是没有密码的。不过,在缺省设置下,这个Guest账户并未被启用,我们可以从“控制面板|管理工具|计算机管理|本地用户和组|用户”中找到“Guest”账户,并用鼠标右击打开“Guest属性”对话框,去除这里的“账户已停用”复选框上的对钩标记,这样退出后就可以从Win98中访问到Win2000/XP了。

其实,启用了Guest账户后,最大的好处是从Win98访问Win2000/XP时就不需要输入用户名和密码了,这种方法比较适合于用户不确定、访问量较大的局域网,但对家庭用户来说并不适用。

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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