簡體   English   中英

從asp.net 1.1連接到SQL Server 2005時設置TDS client_version

[英]Set TDS client_version on connection to SQL Server 2005 from asp.net 1.1

我正在嘗試調試與該舊問題類似的問題: SqlDataSource超時。 在Management Studio中確定

通過.NET SQL Client從ASP.NET 1.1運行時,復雜的存儲過程總是超時,但是從SQL Management Studio運行則沒有問題。 我查看了sys.dm_exec_sessions來查看各個連接的設置。 由於某些原因,來自ASP.NET應用程序的連接使用的是client_version 4(SQLServer 2000 sp1),而管理Studio連接使用的是(適當地)使用版本5(SQLServer 2005)。

我以為我必須更改連接字符串以提示ASP.NET使用正確的版本,但是我不知道如何或在何處執行該操作。 Google毫無幫助。我可以指定ASP.NET應用程序應在某處使用的client_version嗎?

任何幫助深表感謝。

(PS ...這兩個連接的arithabort設置最初也有所不同,但是不幸的是,將它們都設置為“ on”似乎沒有幫助。)

問題是.NET SqlCommand對象內置了默認的30秒命令超時。 SQL Server Management Studio為此設置了無限超時。 您可以通過在執行命令之前更改SqlCommand.CommandTimeout值來更改應用程序的超時值:

http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlcommand.commandtimeout(VS.71).aspx

從SSMS執行查詢需要多長時間? 30秒查詢是對Web應用程序進行的長時間查詢,因此您可以考慮調整代碼,以便在更改超時之前不需要花很長時間即可運行。

客戶端版本基於應用程序計算機上安裝的版本。 如果下載並安裝2005 SQL Native Client,它將更新正在使用的客戶端。 SQL Native Client位於安裝程序CD上,或者可以從2005 Feature Pack中免費免費下載:

http://www.microsoft.com/downloads/details.aspx?FamilyID=D09C1D60-A13C-4479-9B91-9E8B9D835CDC&displaylang=en

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM