544: Ein expliziter Wert für die Identitätsspalte kann nicht in der '%1!'-Tabelle eingefügt werden,
Fehlermeldung:
Meldung 544, Ebene 16, Status 1, Zeile 1
Ein expliziter Wert für die Identitätsspalte kann nicht in der '%1!'-Tabelle eingefügt werden, wenn IDENTITY_INSERT auf OFF festgelegt ist.
Ebene:
16.
Beschreibung:
Diese Fehlermeldung taucht auf, wenn versucht wird, explizit eine Wert in eine IDENTITY Spalte einzugeben, ohne aber die SET IDENTITY_INSERT Einstellung auf ON gesetzt zu haben.
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. Die SET IDENTITY_INSERT Einstellung muß auf ON für diese Tabelle gesetzt werden.
Versionen:
Alle Versionen von SQL Server.
Beispiel(e):
USE tempDB
GO
CREATE TABLE t
(
i1 INT IDENTITY
)
GO
INSERT INTO t(i1) SELECT -1
DROP TABLE t
GO
Anmerkungen:
Um den obigen Batch fehlerfrei ausführen zu können, muß diese folgendermaßen umgeschrieben werden:
USE tempDB
GO
CREATE TABLE t
(
i1 INT IDENTITY
)
GO
SET IDENTITY_INSERT t ON
INSERT INTO t(i1) SELECT -1
SET IDENTITY_INSERT t OFF
DROP TABLE t
GO
Setzt man nur die SET IDENTITY_INSERT Einstellung, ohne die Spaltenliste anzugeben, erhält man den Fehler 8101.