Wenn ich dieses Skript verwenden:Ein Objekt mit dem Namen existiert bereits in der Datenbank nur, wenn ich Einschränkung verwenden
IF OBJECT_ID('dbo.TableX', 'U') IS NOT NULL
DROP TABLE dbo.TableX
CREATE TABLE TableX
(
...
...
...
CONSTRAINT TableX PRIMARY KEY (column1, column2, column3)
)
ich einen Fehler
Ein Objekt mit dem Namen ‚TableX‘ bereits erhalten existieren in der Datenbank
aber das ist nur, wenn ich die CONSTRAINT
Zeile verwende.
Warum erhalte ich nur einen Fehler, wenn ich CONSTRAINT
verwende und wie kann ich es lösen?
Vielen Dank Anton, die es zu lösen, aber ich habe ein anderes Skript, wo ich den Tabellennamen in der Einschränkung und funktioniert gut. –
Es ist eine allgemeine Praxis, Präfixe für verschiedene Objekttypen zu verwenden, wie PK_ für Primärschlüssel, FK_ für Fremdschlüssel, UQ_ für eindeutige Einschränkungen, DF_ für Standardwerte usw. Die Eindeutigkeitsanforderung für Objektnamen ist nicht gut dokumentiert in der SQL Server-Version oder wann/wo/wie das Objekt erstellt wurde. – Anton