2012-10-23 3 views

Antwort

73

Das Hinzufügen beider Einschränkungen in einer Anweisung war nicht so einfach, wie ich dachte, und es schien nicht viele Beispiele zu geben (zumindest konnte ich keine sehr leicht finden), also ich dachte ich würde erzählen, wie ich es hier gemacht habe und vielleicht kann jemand einen besseren Weg vorschlagen?

ALTER TABLE [table name] ADD 
    [New Column Name] [Column Type] 
    CONSTRAINT [constraint name] DEFAULT ([default value]) NOT NULL, 
    CONSTRAINT [constraint name] FOREIGN KEY ([New Column Name]) 
    REFERENCES [Other Table] ([Foreign ID]) 

Beispiel:

ALTER TABLE tableA ADD 
    myNewColumn BIGINT 
    CONSTRAINT myNamedConstraint_df default (1) NOT NULL, 
    CONSTRAINT myNamedConstraint_fk FOREIGN KEY (myNewColumn) 
    REFERENCES tableB (tableBPrimaryKeyID) 
0

Ich habe es in zwei Teile, in SQL Server Management Studio.

Dann änderte ich manuell die GUIDs, was sie wirklich in der neuen Spalte sein sollten. Dann fügte ich die Fremdschlüsseleinschränkung hinzu.

ALTER TABLE MyTable 
ADD FOREIGN KEY (MyId) 
REFERENCES OtherTable(Id) 
Verwandte Themen