KB-QueryAnalyzer Bug??

用Query Analyzer查詢一個Table的Text欄位,發現筆數一多就會發生以下的錯誤
[Microsoft][ODBC SQL Server Driver]Unknown token received from SQL Server

[Microsoft][ODBC SQL Server Driver]Protocol error in TDS stream

這導致明明要查一百筆,有時傳回59筆,有時傳回92筆,有時則100筆都傳回。於是我在查詢欄位中加入了DataLength去檢查Text欄位的大小,發現發生錯誤時最後一筆的DataLength會暴增(如下圖,應為3178,卻得到813572)。

我用Terminal Service連上SQL 2000主機,用本機的Query Analyzer做同樣的查詢,就算查500筆也不會出錯。因此研判這個問題與網路傳輸有關!



與網路傳輸有關,那麼是Query Analyzer的Bug或是底層的Driver有問題? 試了一下SQL 2005 Database Management Studio,就算查500筆也不會出錯。所以網路傳輸的部分應是OK的。


用QueryAnalyzer查了另一個Table的Text欄位,發生一樣的狀況

 
【結論】
Query Analyzer在連線遠端SQL 2000資料庫,查詢大量含Text欄位的資料時,當結果資料長度超過一定大小時,就可能發生中途截斷的狀況,並得到
Unknown token received from SQL Server 或 Protocol error in TDS stream的錯誤訊息。
Published 10 August 2006 09:49 PM 由 Jeffrey
Filed under:


意見

沒有意見

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 

請輸入以上的數字:

搜尋

Go

<August 2006>
SunMonTueWedThuFriSat
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789
 
RSS
【工商服務】


BlogLook Score and Rank

Syndication