SQL Server連接失敗錯(cuò)誤及解決第5/5頁(yè)
2、使用用于 ODBC 的 OLE DB 提供者(不使用 ODBC 數(shù)據(jù)源):
使用 SQL Server 身份驗(yàn)證:
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Uid=myUsername;" & _
"Pwd=myPassword"
使用 Windows 身份驗(yàn)證(信任連接):
"Server=MyServerName;" & _
"Database=myDatabaseName;" & _
"Trusted_Connection=yes"
3、使用用于 ODBC 的 OLE DB 提供者(使用 ODBC 數(shù)據(jù)源):
"Uid=myUsername;" & _
"Pwd=myPassword"
如果遇到連接失敗的情況,我們只要按照一中所示的方法,結(jié)合程序中的連接字符串進(jìn)行檢查,基本都能得到解決。另外,還有以下幾個(gè)要注意的地方:
1、配置 ODBC 數(shù)據(jù)源時(shí),點(diǎn)擊"客戶端"配置選項(xiàng)可以讓我們指定連接使用的網(wǎng)絡(luò)庫(kù)、端口號(hào)等屬性,如下圖所示:

2、如果遇到連接超時(shí)的錯(cuò)誤,我們可以在程序中修改 Connection 對(duì)象的超時(shí)設(shè)置,再打開(kāi)該連接。例如:
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、如果遇到查詢超時(shí)的錯(cuò)誤,我們可以在程序中修改 Recordset 對(duì)象的超時(shí)設(shè)置,再打開(kāi)結(jié)果集。例如:
Dim rs As ADODB.Recordset
. . .
cmd1 = txtQuery.Text
Set rs = New ADODB.Recordset
rs.Properties("Command Time Out") = 300
'同樣以秒為單位,如果設(shè)置為 0 表示無(wú)限制
rs.Open cmd1, cn
rs.MoveFirst
. . .
三、小結(jié)
本文針對(duì)大部分用戶在使用 SQL Server 過(guò)程中常見(jiàn)的連接失敗的錯(cuò)誤,重點(diǎn)討論了在使用 SQL Server 客戶端工具以及用戶開(kāi)發(fā)的應(yīng)用程序兩種情況下,如何診斷并解決連接失敗的錯(cuò)誤??催^(guò)本文以后,相信每一個(gè)讀者都會(huì)對(duì) SQL Server 的連接工作原理、身份驗(yàn)證方式以及應(yīng)用程序開(kāi)發(fā)等有一個(gè)較為全面而深入的連接。本文中所有的測(cè)試或者示例均在 Windows 2000 Advanced Server + SQL Server 2000 企業(yè)版上通過(guò)。