首页 > 日常 > 清空数据库表

清空数据库表

2012年2月18日 发表评论 阅读评论

最近在不断地清空数据库的表,人工操作起来稍显的麻烦了点,放上SQL语句,以备后用。

–/第1步**********删除所有表的外键约束*************************/

DECLARE c1 cursor for select ‘alter table [‘+ object_name(parent_obj) + ‘] drop constraint [‘+name+’]; ‘ from sysobjects where xtype = ‘F’ open c1 declare @c1 varchar(8000) fetch next from c1 into @c1 while(@@fetch_status=0) begin exec(@c1) fetch next from c1 into @c1 end close c1 deallocate c1

–/第2步**********删除所有表*************************/

declare @sql varchar(8000) while (select count(*) from sysobjects where type=’U’)>0 begin SELECT @sql=’drop table ‘ + name FROM sysobjects WHERE (type = ‘U’) ORDER BY ‘drop table ‘ + name exec(@sql) end

分类: 日常 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.