8107: IDENTITY_INSERT ist für die '%1!.%2!.%3!'-Tabelle bereits auf ON festgelegt.

By Frank Kalis

Posted on Dez 20, 2010 von in 8000-8999

Fehlermeldung:
Meldung 8107, Ebene 16, Status 1, Zeile 1
IDENTITY_INSERT ist für die '%1!.%2!.%3!'-Tabelle bereits auf ON festgelegt. Der SET-Vorgang für die '%4!'-Tabelle kann nicht ausgeführt werden.

Ebene:
16.

Beschreibung:
Diese Fehlermeldung erscheint wenn man versucht SET IDENTITY_INSERT für eine Tabelle zu aktivieren, für die diese SET Option bereits aktiviert ist.

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. Das Statement kann so nicht ausgeführt werden. SET IDENTITY_INSERT ON kann nur einmal für eine Tabelle aktiviert werden. Zwischen zwei Statements muss es erst wieder deaktiviert werden.

Versionen:
Alle Versionen von SQL Server.

Beispiele:
USE tempdb;
GO
IF OBJECT_ID('tempdb..#t') > 0
 DROP TABLE #t
GO
CREATE TABLE #t
(
 id INT IDENTITY
)
GO
SET IDENTITY_INSERT #t ON
SET IDENTITY_INSERT #t ON

Anmerkungen:
Im obigen Beispiel wird versucht SET IDENTITY_INSERT ON zweimal hintereinander zu aktivieren. Dies löst den Fehler aus.

Dieser Eintrag wurde eingetragen von und ist abgelegt unter 8000-8999.

Noch kein Feedback


Formular wird geladen...