MSSQL中删除所有外键约束的方法--转自ITEye 作者:欣水寓言

在网上找到了一句得到删除数据库中所有外键约束的语句的sql语句

但是发现这只是一句查询,要执行的话,还得复制出来执行,比较麻烦

于是写了个sp来自动执行,比较方便

代码如下:

 1 CREATE PROCEDURE sp_drop_all_fk
 2 
 3 as
 4 
 5 declare @sql varchar(255)
 6 declare dropsql_cursor cursor for 
 7 select 'alter table '+object_name(fkeyid)+' drop constraint '+object_name(constid)+char(10) from sysreferences
 8 
 9 open dropsql_cursor
10 
11 fetch dropsql_cursor into @sql
12 
13 begin tran
14 
15 while @@fetch_status=0
16 begin
17     
18     execute(@sql)
19     
20     if @@error <> 0
21     begin
22         rollback
23         return
24     end
25 
26     fetch dropsql_cursor into @sql
27 
28 end
29 deallocate dropsql_cursor
30 
31 commit
32 GO

 

转载于:https://www.cnblogs.com/ryanwj/archive/2012/08/17/2643899.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值