333: Für die '%1!'-Zieltabelle der OUTPUT INTO-Klausel dürfen keine CHECK vorhanden sein.

By Frank Kalis

Posted on Dez 10, 2010 von in 0 - 999

Fehlermeldung:
Meldung 333, Ebene 16, Status 1, Zeile 7
Für die '%1!'-Zieltabelle der OUTPUT INTO-Klausel dürfen keine CHECK-Einschränkungen und keine Regeln aktiviert sein. Die CHECK-Einschränkung oder Regel '%2!' wurde gefunden.

Ebene:
16.

Beschreibung:
Diese Fehlermeldung erscheint, wenn man versucht mit der OUTPUT INTO Klausel Zeilen in eine Tabelle einzufügen, die eine CHECK Einschränkung oder Regel aufweist.

Auswirkungen:
Das SQL Statement kann zwar geparst werden, jedoch zur Laufzeit wird der Fehler ausgelöst.

Behebung:
Fehler der Ebene 15 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. Die CHECK Einschränkung(en) und/oder Regeln müssen von der Tabelle entfernt werden, damit das Statement erfolgreich ausgeführt werden kann.

Versionen:
Diese Fehlermeldung wurde mit SQL Server 2005 eingeführt.

Beispiele:
USE Northwind;
GO
CREATE TABLE #t
(
 OrderID int
 CONSTRAINT chk_t_orderID CHECK (OrderID > 0)
)

UPDATE TOP (10) Orders
   SET OrderDate = DATEADD(DAY, 1, OrderDate)
OUTPUT INSERTED.OrderID
  INTO #t;

DROP TABLE #t;

Anmerkungen:
In aller Regel sollte dies eine selten auftretender Fehler sein, dne man aber auch leicht durch eine Änderung in der Programmlogik durch die Verwendung einer Staging Tabelle zum Beispiel, umgehen kann.

Dieser Eintrag wurde eingetragen von und ist abgelegt unter 0 - 999.

Noch kein Feedback


Formular wird geladen...