1996: Ein Index mit Erzwingen der PRIMARY KEY-Einschränkung '%1!' kann nicht mithilfe der Option
Fehlermeldung:
Meldung 1996, Ebene 16, Status 1, Zeile 1
Ein Index mit Erzwingen der PRIMARY KEY-Einschränkung '%1!' kann nicht mithilfe der Option DROP_EXISTING erstellt werden, wenn die Tabelle einen XML-Index aufweist.
Ebene:
16.
Beschreibung:
Diese Fehlermeldung erscheint, wenn man versucht den Index, der hinter einer PRIMARY KEY Einschränkung liegt per DROP_EXISTING neu zu erstellt, die Tabelle einen XML Index besitzt.
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. Der XML Index muss bevor gelöscht werden und anschliessend neu erstellt werden.
Versionen:
Diese Fehlermeldung wurde mit SQL Server 2005 eingeführt.
Beispiele:
USE tempdb;
GO
IF OBJECT_ID('tempdb..#t') > 0
DROP TABLE #t
GO
CREATE TABLE #t
(
id INT
CONSTRAINT CIX_t_id PRIMARY KEY,
c1 XML
)
GO
CREATE PRIMARY XML INDEX IX_XML_t_c1
ON #t(c1);
ALTER INDEX CIX_t_id ON #t
DISABLE;
GO
CREATE UNIQUE CLUSTERED INDEX CIX_t_id
ON #t(id)
WITH (
DROP_EXISTING = ON,
ON_LINE = ON);
Anmerkungen:
Im obigen Beispiel wird versucht, den Index, der die PRIMARY KEY Einschränkung durchsetzt, per DROP_EXISTING neu zu erstellen, während die Tabelle einen XML Index aufweist. Dies löst den Fehler aus.