删除数据库中所有表及其数据

DECLARE @table varchar(64),
@sql varchar(150),
@delsql varchar(150)
DECLARE curTable SCROLL CURSOR FOR SELECT name FROM sysobjects WHERE Type = 'U' And Name <> 'dtproperties' ORDER BY name

OPEN curTable

FETCH FIRST FROM curTable INTO @table

WHILE (@@FETCH_STATUS = 0)
BEGIN
set @sql = 'truncate table ' + Cast(@table as varchar)
set @delsql = 'drop table ' + Cast(@table as varchar)
--print @sql
exec (@sql)
exec (@delsql)

   FETCH NEXT FROM curTable INTO @table
END
CLOSE curTable
DEALLOCATE curTable

原文地址:https://www.cnblogs.com/sdjxcolin/p/1374880.html