Help and Support

文章編號: 925719 - 上次校閱: 2007年11月20日 - 版次: 1.2

BUG: 當您嘗試使用 SQL Server Management Studio,來更新資料的資料表在 SQL Server 2005 的資料列時,您可能會收到錯誤訊息

全部展開 | 全部摺疊

徵狀

請試想下列案例。 您嘗試使用 SQL Server Management Studio 更新 Microsoft SQL Server 2005 中的資料表。 在 Object Explorer,您用滑鼠右鍵按一下的資料表名稱,並且再您按一下 [開啟] 資料表 ]。 您會更新資料表的資料列。 在這的種情況您可能會收到下列錯誤訊息,意外地在 Microsoft SQL Server Management Studio 對話方塊中:
錯誤訊息 1
資料已變更自上次擷取 [結果] 窗格)。 您要現在儲存您所做的變更嗎?
(開放式並行存取控制錯誤)
按一下 [是],認可資料庫,還是您的變更。
按 [否] 捨棄您的變更,並擷取在目前的資料,這個資料列的。
按一下 [取消] 以繼續編輯。
請注意 如果您按一下 [是] 這個錯誤訊息] 對話方塊中的,就會正確地更新資料列。
錯誤訊息 2
已不更新的任何資料列。
X 的資料列中的資料無法認可。
錯誤來源: Microsoft.VisualStudio.DataTools。
錯誤訊息: 資料列值更新或刪除任何執行不進行資料列唯一或他們變更多個資料列 (N 資料列)。
更正錯誤,再重試,或按 ESC 取消,變更。
請注意 如果您收到這個訊息] 對話方塊時,您無法更新資料列。

如果下列情況皆成立就會發生這項問題:
  • 資料表會包含 文字 ntext 資料型別的一或多個資料的行。
  • 其中一個這些資料行的值會包含下列字元:
    • %登入 (%)
    • 底線 (_)
    • 左的括弧 ([])
  • 資料表不包含主索引鍵。
請注意 當您嘗試在 Microsoft Visual Studio 2005 中使用資料表設計工具],來更新 SQL Server 2005 資料庫中之資料表時,也會發生這個問題。

發生的原因

SQL Server Management Studio 產生的不正確的 SQL 陳述式,在更新作業,就會發生這個問題。 當資料表不包含主索引鍵時, 則所有資料行的值用來識別要更新之資料列。 當 SQL Server Management Studio 建構這個陳述式時,不正確的比較運算子 (=) 可比較的 text ntext image 資料型別的資料行。

其他可行方案

如果要解決這個問題而定,請在 SQL Server Management Studio 中建立新查詢視窗。 然後,執行 SQL UPDATE 陳述式以更新資料表中的資料列。

請注意 如果您收到第一個錯誤訊息中,< 徵狀 > 一節所述時,您可以按一下 [是] 以更新資料列。

狀況說明

確認 Microsoft 已經確實這在 < 適用於 > 一節中所列之 Microsoft 產品中的有錯誤。

這篇文章中的資訊適用於:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional Edition
  • Microsoft Visual Studio 2005 Team Edition for Software Architects
  • Microsoft Visual Studio 2005 Team Edition for Software Developers
  • Microsoft Visual Studio 2005 Team Edition for Software Testers
關鍵字:?
kbmt kbexpertiseadvanced kbtshoot kbsql2005tool kbbug KB925719 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。如果您發現錯誤,並想要協助我們進行改善,請填寫本篇文章下方的問卷。
按一下這裡查看此文章的英文版本:925719? (http://support.microsoft.com/kb/925719/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

文章翻譯