外來鍵刪除(T-SQL Drop Foreign Key)

DukeCheng發表於2014-02-22

列出某張表相關的 FK Name
select distinct name from sys.objects where object_id in
(   select fk.constraint_object_id from sys.foreign_key_columns as fk
    where fk.referenced_object_id =
        (select object_id from sys.tables where name = 'TableName')
)

列出主外來鍵關係

select t.name as TableWithForeignKey, fk.constraint_column_id as FK_PartNo , c.name as ForeignKeyColumn
from sys.foreign_key_columns as fk
inner join sys.tables as t on fk.parent_object_id = t.object_id
inner join sys.columns as c on fk.parent_object_id = c.object_id and fk.parent_column_id = c.column_id
where fk.referenced_object_id = (select object_id from sys.tables where name = 'User')
order by TableWithForeignKey, FK_PartNo;

刪除外來鍵

alter table Membership drop FK_Membership_Organization

相關文章