exec sp_msforeachtable 'alter table ? nocheck CONSTRAINT all'
exec sp_msforeachtable 'ALTER TABLE ? DISABLE TRIGGER all'
--从系统表中读取TB开头的表名之后逐条删除
Declare @name varchar(100)
Declare TbNameCur CURSOR FOR
select name from sysobjects where XType='U' and name like 'TB%'
OPEN TbNameCur
FETCH NEXT FROM TbNameCur INTO @name
WHILE @@FETCH_STATUS=0 --语句执行成功
begin
--更新学生表中的记录
exec ('delete from '+@name)
FETCH NEXT FROM TbNameCur INTO @name
end
--关闭并释放游标
CLOSE TbNameCur
DEALLOCATE TbNameCur
--启用触发器和约束
exec sp_msforeachtable 'alter table ? check constraint all'
exec sp_msforeachtable 'ALTER TABLE ? enable TRIGGER all' SQL清空以TB开头表中的数据
最新推荐文章于 2022-04-21 16:32:25 发布
本文介绍了一种使用T-SQL脚本批量禁用表约束、触发器及删除特定前缀的表的方法,并在最后重新启用约束和触发器。
1312





