sql server怎么删除外键
1个回答
展开全部
x先找出约束名字
然后删除它
我给个例子
--测试环境
--主表
create table test1(id int primary key not null,value int)
insert test1 select 1,2
go
--从表
create table test2(id int references test1(id),value int)
go
--第一步:找出test2表上的外键约束名字
--2000
exec sp_helpconstraint 'test2'
--可以在constraint_name 属性中找到外键约束名字
--2005
select name
from sys.foreign_key_columns f join sys.objects o on f.constraint_object_id=o.object_id
where f.parent_object_id=object_id('test2')
/*
name
---------------------------------
FK__test2__id__08EA5793*/
--第二步:删除外键约束
alter table test2 drop constraint FK__test2__id__08EA5793
--第三步:检查表上是否还有外键约束
--只要使用第一步里面的查找语句即可
然后删除它
我给个例子
--测试环境
--主表
create table test1(id int primary key not null,value int)
insert test1 select 1,2
go
--从表
create table test2(id int references test1(id),value int)
go
--第一步:找出test2表上的外键约束名字
--2000
exec sp_helpconstraint 'test2'
--可以在constraint_name 属性中找到外键约束名字
--2005
select name
from sys.foreign_key_columns f join sys.objects o on f.constraint_object_id=o.object_id
where f.parent_object_id=object_id('test2')
/*
name
---------------------------------
FK__test2__id__08EA5793*/
--第二步:删除外键约束
alter table test2 drop constraint FK__test2__id__08EA5793
--第三步:检查表上是否还有外键约束
--只要使用第一步里面的查找语句即可
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询