SQL清空以TB开头表中的数据

2014-11-24 13:20:39 · 作者: · 浏览: 0
SQL清空以TB开头表中的数据
[sql] 
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'