SQL Server連接失敗錯(cuò)誤及解決第4/5頁(yè)
更新時(shí)間:2007年01月08日 00:00:00 作者:
以下注冊(cè)表鍵
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
的值決定了SQL Server將采取何種身份驗(yàn)證模式。該值為1,表示使用Windows 身份驗(yàn)證模式;該值為2,表示使用混合模式(Windows 身份驗(yàn)證和 SQL Server 身份驗(yàn)證)。
看完如何解決前兩個(gè)錯(cuò)誤的方法之后,讓我們來(lái)看一下如圖 3 所示的第三個(gè)錯(cuò)誤。
如果遇到第三個(gè)錯(cuò)誤,一般而言表示客戶端已經(jīng)找到了這臺(tái)服務(wù)器,并且可以進(jìn)行連接,不過(guò)是由于連接的時(shí)間大于允許的時(shí)間而導(dǎo)致出錯(cuò)。這種情況一般會(huì)發(fā)生在當(dāng)用戶在Internet上運(yùn)行企業(yè)管理器來(lái)注冊(cè)另外一臺(tái)同樣在Internet上的服務(wù)器,并且是慢速連接時(shí),有可能會(huì)導(dǎo)致以上的超時(shí)錯(cuò)誤。有些情況下,由于局域網(wǎng)的網(wǎng)絡(luò)問(wèn)題,也會(huì)導(dǎo)致這樣的錯(cuò)誤。
要解決這樣的錯(cuò)誤,可以修改客戶端的連接超時(shí)設(shè)置。默認(rèn)情況下,通過(guò)企業(yè)管理器注冊(cè)另外一臺(tái)SQL Server的超時(shí)設(shè)置是 4 秒,而查詢分析器是 15 秒(這也是為什么在企業(yè)管理器里發(fā)生錯(cuò)誤的可能性比較大的原因)。具體步驟為:
1、在企業(yè)管理器中,選擇菜單上的"工具",再選擇"選項(xiàng)";
2、在彈出的"SQL Server企業(yè)管理器屬性"窗口中,點(diǎn)擊"高級(jí)"選項(xiàng)卡;
3、在"連接設(shè)置"下的"登錄超時(shí)(秒)"右邊的框中輸入一個(gè)比較大的數(shù)字,如 20。
查詢分析器中也可以在同樣位置進(jìn)行設(shè)置。
二、應(yīng)用程序連接失敗
以上的三種錯(cuò)誤信息都是發(fā)生在 SQL Server 自帶的客戶端工具中,在應(yīng)用程序中我們也會(huì)遇到類似的錯(cuò)誤信息,例如:
Code:
Microsoft OLE DB Provider for SQL Server (0x80004005)
[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.
Microsoft OLE DB Provider for SQL Server (0x80004005)
用戶 'sa' 登錄失敗。原因: 未與信任 SQL Server 連接相關(guān)聯(lián)。
Microsoft OLE DB Provider for ODBC Drivers 錯(cuò)誤 '80004005'.
[Microsoft][ODBC SQL Server Driver]超時(shí)已過(guò)期.
[DBNETLIB][ConnectionOpen (Connect()).]Specified SQL server not found.
Microsoft OLE DB Provider for SQL Server (0x80004005)
用戶 'sa' 登錄失敗。原因: 未與信任 SQL Server 連接相關(guān)聯(lián)。
Microsoft OLE DB Provider for ODBC Drivers 錯(cuò)誤 '80004005'.
[Microsoft][ODBC SQL Server Driver]超時(shí)已過(guò)期.
首先,讓我們來(lái)詳細(xì)看以下的示意圖來(lái)了解一下使用 ODBC 和使用 OLE DB 連接 SQL Server 有什么不同之處。

從上圖中,我們可以看出在實(shí)際使用中,應(yīng)用程序創(chuàng)建和使用各種 ADO 對(duì)象,ADO 對(duì)象框架調(diào)用享用的 OLE DB 提供者。為了訪問(wèn) SQL Server 數(shù)據(jù)庫(kù),OLE DB 提供了兩種不同的方法:用于 SQL Server 的 OLE DB 提供者以及用于 ODBC 的 OLE DB 提供者。這兩種不同的方法對(duì)應(yīng)于兩種不同的連接字符串,標(biāo)準(zhǔn)的連接字符串寫(xiě)法如下所示:
1、使用用于 SQL Server 的 OLE DB 提供者:
使用 SQL Server 身份驗(yàn)證:
Code:
oConn.Open "Provider=sqloledb;" & _
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"User Id=myUsername;" & _
"Password=myPassword"
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"User Id=myUsername;" & _
"Password=myPassword"
使用 Windows 身份驗(yàn)證(信任連接):
Code:
oConn.Open "Provider=sqloledb;" & _
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"Integrated Security=SSPI"
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"Integrated Security=SSPI"
相關(guān)文章
IN&EXISTS與NOT IN&NOT EXISTS 的優(yōu)化原則小結(jié)
下面只是從理論上提出了一些建議,最好的原則是大家在上面的基礎(chǔ)上,能夠使用執(zhí)行計(jì)劃來(lái)分析,得出最佳的語(yǔ)句的寫(xiě)法。2010-06-06Linux安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)的步驟
這篇文章主要介紹了Linux安裝ODBC連接SQLServer數(shù)據(jù)庫(kù)?,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04解決sql server 數(shù)據(jù)庫(kù),sa用戶被鎖定的問(wèn)題
這篇文章主要介紹了解決sql server 數(shù)據(jù)庫(kù),sa用戶被鎖定的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06用注解編寫(xiě)創(chuàng)建表的SQL語(yǔ)句
這篇文章主要為大家詳細(xì)介紹了如何用注解編寫(xiě)創(chuàng)建表的SQL語(yǔ)句,感興趣的小伙伴們可以參考一下2016-08-08SQL SERVER 查詢正在實(shí)行的SQL語(yǔ)句
SQL SERVER 查詢正在實(shí)行的SQL語(yǔ)句的實(shí)現(xiàn)代碼2009-06-06SQLServer XML查詢快速入門(mén)(18句話)
sql xml 入門(mén),需要的朋友可以參考下。2009-08-08SQL Server 定時(shí)訪問(wèn)url激活數(shù)據(jù)同步示例
這篇文章主要介紹的是SQL Server 定時(shí)訪問(wèn)url激活數(shù)據(jù)同步的具體實(shí)現(xiàn),需要的朋友可以參考下2014-05-05