FIX: 使用檢視表的 A Transact-SQL 查詢可能會意外失敗在 SQL Server 2000 SP3 中

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:828269
本文已封存。本文係以「現狀」提供且不會再更新。
本文章的有 Microsoft SQL Server 2000 Service Pack 2] 版本請參閱 818406
Bug #: 469157 (SQL Server 8.0)
徵狀
當您執行 Transact-SQL 陳述式參考許多檢視的、 Transact-SQL 陳述式可能會失敗,並且您會收到下列錯誤訊息:

"伺服器: 訊息 4414 層級 16,狀態 1,行 1 無法為檢視或函數解析配置輔助資料表。查詢 (256) 中的資料表最大數目已超過"。
解決方案

服務套件資訊

如果要解決這個問題,取得最新的 Service Pack,Microsoft SQL Server 2000。如需詳細資訊按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
290211如何取得最新的 SQL Server 2000 Service Pack

Hotfix 資訊

此 Hotfix 的英文版具有檔案屬性 (或更新) 中如下表所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用 [中日期] 和 [時間] 工具,在 [控制台] 中的 [時區] 索引標籤]。
   Date         Time   Version        Size       File name   -------------------------------------------------------------------   26-Feb-2003  03:41  2000.80.777.0     29,244  Dbmslpcn.dll   08-Feb-2003  05:43                   786,432  Distmdl.ldf   08-Feb-2003  05:43                 2,359,296  Distmdl.mdf   30-Jan-2003  01:55                       180  Drop_repl_hotfix.sql   01-Feb-2003  00:32  2000.80.763.0  1,557,052  Dtsui.dll   30-Jan-2003  05:18                   746,470  Instdist.sql   30-Jan-2003  01:55                     1,402  Inst_repl_hotfix.sql   08-Feb-2003  06:40  2000.80.765.0     90,692  Msgprox.dll   01-Apr-2003  02:07                     1,873  Odsole.sql   05-Apr-2003  01:46  2000.80.800.0     62,024  Odsole70.dll   02-Apr-2003  21:48  2000.80.796.0     57,904  Osql.exe   02-Apr-2003  23:15  2000.80.797.0    279,104  Pfutil80.dll   04-Apr-2003  21:27                 1,083,467  Replmerg.sql   04-Apr-2003  21:53  2000.80.798.0    221,768  Replprov.dll   08-Feb-2003  06:40  2000.80.765.0    307,784  Replrec.dll   01-Apr-2003  02:23                 1,084,828  Replsys.sql   24-Apr-2003  23:47                       736  Shortcut to files.lnk   03-Apr-2003  18:14                   104,868  Sp3_serv_uni.sql   19-Mar-2003  18:20  2000.80.789.0     28,672  Sqlevn70.rll   28-Feb-2003  01:34  2000.80.778.0    176,696  Sqlmap70.dll   08-Feb-2003  06:40  2000.80.765.0     57,920  Sqlrepss.dll   05-Apr-2003  01:47  2000.80.800.0  7,540,817  Sqlservr.exe   08-Feb-2003  06:40  2000.80.765.0     45,644  Sqlvdi.dll   26-Feb-2003  03:41  2000.80.777.0     29,244  Ssmslpcn.dll   26-Feb-2003  03:41  2000.80.777.0     82,492  Ssnetlib.dll   17-Mar-2003  14:49                   727,132  Sysmessages.sym   28-Feb-2003  01:34  2000.80.778.0     98,872  Xpweb70.dll				
附註由於檔案相依性最新版 Hotfix 或包含這些檔案的功能也可能包含其他檔案。
狀況說明
Microsoft 已確認這是本文 < 適用於 > 一節中所列的 Microsoft 產品中的問題。這個問題,首先已經在 Microsoft SQL Server 2000 服務套件 4 中獲得修正。
其他相關資訊
可以在 SELECT Transact-SQL 陳述式中參考的資料表的數目上限是 256。此限制記錄的 [SQL Server 線上叢書 》"最大容量規格 」 區段下方。這個限制包括 SELECT 陳述式中檢視和所參考的資料表。而且,此限制包括該資料表和檢視包含在查詢中所參考的檢視。因此,如果一個資料表或檢視參考一個以上的時間,在查詢中,每個參考資料表或檢視 (或資料表和檢視檢視表中所參考) 則會計算對此限制。

使用此修正程式數目的資料表或查詢中所參考的檢視最大的限制增加至 260。因此,您仍可能會收到本文的 < 徵狀 > 一節所述之錯誤訊息。如果您仍然收到訊息 4414 」 錯誤訊息,您可能必須分割查詢,以便查詢中參考的資料表或檢視較低的數目。您可以變更檢視表定義中有問題的查詢,以降低在檢視中所參考的資料表數目參考。
参考
如其他有關此 Hotfix 的 SQL Server 2000 Service Pack 2 版本的資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
818406FIX: 使用檢視表的 A Transact-SQL 查詢可能會意外失敗於 SQL Server 2000 S
T sql

警告:本文為自動翻譯

內容

文章識別碼:828269 - 最後檢閱時間:01/17/2015 05:22:29 - 修訂: 2.0

Microsoft SQL Server 2000 Service Pack 3

  • kbnosurvey kbarchive kbmt kbqfe kbsqlserv2000presp4fix kbfix kbbug KB828269 KbMtzh
意見反應