272: Eine timestamp-Spalte kann nicht aktualisiert werden.
Fehlermeldung:
Meldung 272, Ebene 16, Status 1, Zeile 4
Eine timestamp-Spalte kann nicht aktualisiert werden.
Ebene:
16.
Beschreibung:
Diese Fehlermeldung erscheint, wenn versucht wird, eine Tabellenspalte vom Typ TIMESTAMP zu aktualisieren.
Auswirkungen:
Das SQL Statement kann zwar geparst werden, jedoch zur Laufzeit wird der Fehler ausgelöst.
Behebung:
Fehler der Ebene 16 sind Fehler, die vom Anwender hervorgerufen werden. Sie können und müssen vom Anwender korrigiert werden. Spalten von Datentypen TIMESTAMP können nicht vom Anwender aktualisiert werden. Die Werte, die in solchen Spalten gespeichert werden, werden von SQL Server automatisch vergeben.
Versionen:
Alle Versionen von SQL Server.
Beispiele:
USE tempdb
GO
CREATE TABLE #t
(
TIMESTAMP
)
INSERT INTO #t DEFAULT VALUES
GO
SELECT *
FROM #t
UPDATE #t
SET TIMESTAMP = TIMESTAMP + CAST(1 AS BINARY(8))
DROP TABLE #t
Anmerkungen:
Vielfach herrscht Unsicherheit bezüglich des TIMESTAMP Datentypen. Dieser Datentyp hat nichts mit Datum und Datumswerten zu tun. Werte vom Type TIMESTAMP sind binäre Nummern. Von daher ist das Synonym ROWVERSION für diesen Datentypen eindeutiger.