sql server 删除所有的表
Posted yujian90
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 删除所有的表相关的知识,希望对你有一定的参考价值。
--/第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
以上是关于sql server 删除所有的表的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server,如何从用户定义的表类型中删除更新元素?
通过从 SQL Server 中的当前日期删除超过 180 天的所有记录来清除