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

注意: 您可能會收到錯誤訊息,當您嘗試使用 SQL Server 管理 Studio 更新資料表在 SQL Server 2005 中的資料列

全部展開 | 全部摺疊

徵狀

考慮下列案例。 您嘗試使用 SQL Server 管理 Studio 更新在 Microsoft SQL Server 2005 中的資料表。 在物件總管中, 以滑鼠右鍵按一下資料表,名稱,並按一下 開啟資料表 。 您要更新之資料表的資料列。 在此的情況下,您可能會收到下列的錯誤訊息意外地在 [ Microsoft SQL Server 管理 Studio ] 對話方塊中:
錯誤訊息 1
資料已變更,因為上次擷取 [結果] 窗格。 您要立即儲存您所做的變更嗎?
(開放式並行存取控制項錯誤)
按一下 [是] ?認可還是資料庫的變更。
按一下 [否] 放棄您所做的變更,並擷取這個資料列目前的資料。
按一下 [取消] 繼續進行編輯。
附註 如果您按一下 [] 這個錯誤訊息對話方塊,正確地更新資料列。
錯誤訊息 2
沒有資料列已更新。
資料列 X 中的資料不認可。
錯誤來源: Microsoft.VisualStudio.DataTools。
錯誤訊息: 值更新或刪除其中的資料列不進行資料列唯一的或他們變更多個資料列 (N 列)。
更正錯誤方式],或再試一次按 ESC 來取消變更]。
附註 如果您收到這個訊息] 對話方塊,您無法更新資料列。

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

發生的原因

發生這個問題是因為 SQL Server 管理 Studio 會產生不正確 SQL 陳述式更新作業。 當資料表不包含主索引鍵時,所有資料行的值用來識別要更新之資料列中。 當 SQL Server 管理 Studio 建構這個陳述式時,不正確的比較運算子 (=) 來比較資料行的 文字 ntext 影像 資料型別。

其他可行方案

若要解決這個問題,建立 [SQL Server 管理 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及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
 

文章翻譯