SQL Server连接失败错误及解决

 更新时间:2007年01月08日 00:00:00   作者:  

2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 数据源):

  使用 SQL Server 身份验证:

Code:
oConn.Open "Driver={SQL Server};" & _ 
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Uid=myUsername;" & _
"Pwd=myPassword" 



  使用 Windows 身份验证(信任连接):

Code:
oConn.Open "Driver={SQL Server};" & _ 
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Trusted_Connection=yes" 



  3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 数据源):

Code:
oConn.Open "DSN=mySystemDSN;" & _ 
"Uid=myUsername;" & _ 
"Pwd=myPassword" 



  如果遇到连接失败的情况,我们只要按照一中所示的方法,结合程序中的连接字符串进行检查,基本都能得到解决。另外,还有以下几个要注意的地方:

  1、配置 ODBC 数据源时,点击"客户端"配置选项可以让我们指定连接使用的网络库、端口号等属性,如下图所示:


按此在新窗口打开图片

2、如果遇到连接超时的错误,我们可以在程序中修改 Connection 对象的超时设置,再打开该连接。例如:

Code:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSNtest="DRIVER={SQL Server};SERVER=ServerName;UID=USER;PWD=password;DATABASE=mydatabase"
Conn. Properties("Connect Timeout") = 15 '以秒为单位
Conn.open DSNtest
%> 
 


  3、如果遇到查询超时的错误,我们可以在程序中修改 Recordset 对象的超时设置,再打开结果集。例如:

Code:
Dim cn As New ADODB.Connection
Dim rs As ADODB.Recordset
. . . 
cmd1 = txtQuery.Text
Set rs = New ADODB.Recordset
rs.Properties("Command Time Out") = 300
'同样以秒为单位,如果设置为 0 表示无限
rs.Open cmd1, cn
rs.MoveFirst
. . .   



  三、小结

  本文针对大部分用户在使用 SQL Server 过程中常见的连接失败的错误,重点讨论了在使用 SQL Server 客户端工具以及用户开发的应用程序两种情况下,如何诊断并解决连接失败的错误。看过本文以后,相信每一个读者都会对 SQL Server 的连接工作原理、身份验证方式以及应用程序开发等有一个较为全面而深入的连接。本文中所有的测试或者示例均在 Windows 2000 Advanced Server + SQL Server 2000 企业版上通过。

相关文章

最新评论