Möglicherweise erhalten Sie eine Fehlermeldung, wenn Sie versuchen, SQL Server Management Studio zum Aktualisieren einer Zeile einer Tabelle in SQL Server

Dieser Artikel hilft Ihnen, das Problem zu beheben, das auftritt, wenn Sie versuchen, eine Tabelle mithilfe von SQL Server Management Studio in SQL Server zu aktualisieren.

Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 925719

Problembeschreibung

Stellen Sie sich folgendes Szenario vor: Sie versuchen, SQL Server Management Studio zu verwenden, um eine Tabelle in Microsoft SQL Server zu aktualisieren. Klicken Sie in Objekt-Explorer mit der rechten Maustaste auf den Namen der Tabelle, und klicken Sie dann auf Tabelle öffnen. Sie aktualisieren eine Zeile der Tabelle. In diesem Szenario erhalten Sie möglicherweise unerwartet eine der folgenden Fehlermeldungen im Dialogfeld Microsoft SQL Server Management Studio:

  • Fehlermeldung 1

    Die Daten haben sich seit dem letzten Abrufen des Ergebnisbereichs geändert. Möchten Sie Ihre Änderungen jetzt speichern?

    (Fehler bei der Steuerung der optimistischen Parallelität)

    Klicken Sie auf Ja, um Ihre Änderungen trotzdem an die Datenbank zu committen.

    Klicken Sie auf Nein, um die Änderung zu verwerfen und die aktuellen Daten für diese Zeile abzurufen.

    Klicken Sie auf Abbrechen, um die Bearbeitung fortzusetzen.

    Hinweis

    Wenn Sie im Dialogfeld dieser Fehlermeldung auf Ja klicken, wird die Zeile ordnungsgemäß aktualisiert.

  • Fehlermeldung 2

    Es wurde keine Zeile aktualisiert.

    Die Daten in Zeile X wurden nicht committet.

    Fehlerquelle: Microsoft.VisualStudio.DataTools.

    Fehlermeldung: Die aktualisierten oder gelöschten Zeilenwerte machen die Zeile entweder nicht eindeutig, oder sie ändern mehrere Zeilen (N Zeilen).

    Korrigieren Sie die Fehler, und versuchen Sie es erneut, oder drücken Sie ESC, um die Änderungen abzubrechen.

    Hinweis

    Wenn Sie dieses Meldungsdialogfeld erhalten, können Sie die Zeile nicht aktualisieren.

Das Problem tritt auf, wenn die folgenden Bedingungen vorliegen:

  • Die Tabelle enthält mindestens eine Spalte des Datentyps text oder ntext.

  • Der Wert einer dieser Spalten enthält die folgenden Zeichen:

    • Prozentzeichen (%)
    • Unterstrich (_)
    • Linke Klammer ([)
  • Die Tabelle enthält keinen Primärschlüssel.

Hinweis

Dieses Problem tritt auch auf, wenn Sie versuchen, table Designer in Microsoft Visual Studio zu verwenden, um eine Tabelle zu aktualisieren, die sich in einer SQL Server-Datenbank befindet.

Ursache

Dieses Problem tritt auf, weil SQL Server Management Studio eine falsche SQL-Anweisung für den Updatevorgang generiert. Wenn die Tabelle keinen Primärschlüssel enthält, werden die Werte aller Spalten verwendet, um die zu aktualisierende Zeile zu identifizieren. Wenn SQL Server Management Studio diese Anweisung erstellt, wird der falsche Vergleichsoperator (=) verwendet, um Spalten der Datentypen text, ntext oder image zu vergleichen.

Problemumgehung

Um dieses Problem zu umgehen, erstellen Sie ein neues Abfragefenster in SQL Server Management Studio. Führen Sie dann eine SQL-Anweisung UPDATE aus, um die Zeile in der Tabelle zu aktualisieren.

Hinweis

Wenn Sie die erste Fehlermeldung erhalten, die im Abschnitt Symptome erwähnt wird, können Sie auf Ja klicken, um die Zeile zu aktualisieren.

References

UPDATE (Transact-SQL)