1778: Die '%1!.%2!'-Spalte hat nicht denselben Datentyp wie die verweisende

By Frank Kalis

Posted on Feb 18, 2011 von in 1000-1999

Fehlermeldung:
Meldung 1778, Ebene 16, Status 0, Zeile 1
Die '%1!.%2!'-Spalte hat nicht denselben Datentyp wie die verweisende '%3!.%4!'-Spalte im '%5!'-Fremdschlüssel.

Ebene:
16.

Beschreibung:
Diese Fehlermeldung erscheint, wenn man versucht eine referentielle Integritätsbeziehung zwischen zwei Spalten ungleichen Datentypes einzurichten.

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. Die Spalten sollten den gleichen Datentyp aufweisen.

Versionen:
Alle Versionen von SQL Server.

Beispiele:
USE tempdb;
GO
IF OBJECT_ID('tempdb..t1') > 0
 DROP TABLE t1
GO
IF OBJECT_ID('tempdb..t') > 0
 DROP TABLE t
GO
CREATE TABLE t
(
 c1 CHAR(5) PRIMARY KEY
)
GO
CREATE TABLE t1
(
 c1 XML
 CONSTRAINT FK_t_t1_c1 FOREIGN KEY REFERENCES t(c1)
 ON UPDATE CASCADE
)

Anmerkungen:
Im obigen Beispiel wird versucht, eine referentielle Integritätsbeziehung zwischen einer CHAR und einer XML Spalte einzurichten. Dies löst den Fehler aus.

Dieser Eintrag wurde eingetragen von und ist abgelegt unter 1000-1999.

Noch kein Feedback


Formular wird geladen...