0
我有一個帶有主鍵(自動增量)和外鍵的sql表。現在我需要修改該表,方法是將外鍵修改爲第二個主鍵,以便其值不得重複。更改Sql表(將外鍵更改爲表的第二個主鍵)
如何在不影響數據的情況下更改我的表格?需要sql代碼。
問候, Vix指數
我有一個帶有主鍵(自動增量)和外鍵的sql表。現在我需要修改該表,方法是將外鍵修改爲第二個主鍵,以便其值不得重複。更改Sql表(將外鍵更改爲表的第二個主鍵)
如何在不影響數據的情況下更改我的表格?需要sql代碼。
問候, Vix指數
如果我明白你的要求,你要強制的外鍵是給定的表內唯一的,這樣您的模式是這樣的:
Create Table Table1
(
Id int not null primary key clustered
, ForeignId not null
, ...
, Constraint FK_Table1_Table2
Foreign Key (ForeignId)
References Table2(Id)
)
而且你現在想強制ForeignId在此表中是唯一的,對嗎?你會做以下事情:
Alter Table Table1
Add Constraint UC_Table1_ForeignId Unique Nonclustered (ForeignId)
是的,我想外鍵不被複制。 – vix 2010-04-03 04:36:23