SQL server怎么批量删除表

来自:互联网
时间:2020-04-15
阅读:

一,先查出目标数据库中你要找的表

use 数据库名
SELECT * FROM sysobjects WHERE xtype='U' AND name LIKE 'wp%'

确定查出来的表都是自己想要的,如果不是,继续修改上述SQL语句,直到查准了自己想要的表

二,用下面存储过程语句删除

use 数据库名
DECLARE @Table NVARCHAR(30)  
DECLARE tmpCur CURSOR FOR   
SELECT * FROM sysobjects WHERE TYPE='U' AND name LIKE 'wp%'
OPEN tmpCur   
FETCH NEXT FROM tmpCur INTO @Table  
WHILE @@FETCH_STATUS = 0   
BEGIN  
    DECLARE @sql VARCHAR(100)  
    SELECT @sql = 'drop table ' + @Table  
    EXEC(@sql)  
    FETCH NEXT FROM tmpCur INTO @Table  
END  
CLOSE tmpCur   
DEALLOCATE tmpCur  

注意:
1,下面的SELECT语句要和上面第一点保持一致
2,如果是删视图,第一、二点里面的xtype='V',第二点里的drop table要改成drop view
3,如果是删存储过程,第一、二点里面的xtype='P',第二点里的drop table要改成drop proc

返回顶部
顶部