三、提示连接超时
如果遇到第三个错误,一般而言表示客户端已经找到了这台服务器,并且可以进行连接,不过是由于连接的时间大于允许的时间而导致出错。
这种情况一般会发生在当用户在Internet上运行企业管理器来注册另外一台同样在Internet上的服务器, 并且是慢速连接时,有可能会导致以上的超时错误.有些情况下,由于局域网的网络问题,也会导致这样的错误。
要解决这样的错误,可以修改客户端的连接超时设置. 默认情况下,通过企业管理器注册另外一台SQL Server的超时设置是4秒, 而查询分析器是15秒(这也是为什么在企业管理器里发生错误的可能性比较大的原因).
具体步骤为:
企业管理器中的设置:
1.在企业管理器中,选择菜单上的"工具",再选择"选项"
2.在弹出的"SQL Server企业管理器属性"窗口中,点击"高级"选项卡
3.在"连接设置"下的"登录超时(秒)"右边的框中输入一个比较大的数字,如20.
查询分析器中的设置:
工具—选项—连接—将登录超时设置为一个较大的数字
四、大部分机都用Tcp/ip才能成功,有时你会发现用Named Pipes才可以?
这是由于在WINDOWS 2000以后的操作系统中,MS为解决SQL SERVER的安全问题将TCP/IP配置为SQL Server的默认连接协议,你可以在CLIENT NETWORK UTILITY中看到TCP/IP和NAME PIPE 的顺序。
也可以在:
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/Client/SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
此处可以看到默认的协议。
问:怎么在程序中更改Named Pipes,Tcp/ip其sql语句怎么写?
答:可以在以上提到的注册表的相对位置来修改,示例如下:
·CLIENT端:
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/Client/SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
·SERVER端:
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/MSSQLServer/SuperSocketNetLib]
"ProtocolOrder"=hex(7):74,00,63,00,70,00,00,00,00,00
编辑特别推荐:
SQLServer视图中的一些限制条件
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。