欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SqlServer批量删除表

程序员文章站 2024-03-21 18:15:34
...

最近需要删除一批曾经用来存放日志的表,这些表数量很多而且占用了大量的磁盘空间,不得不删除,释放相应的磁盘空间。但是一张一张的手动来删除比较麻烦,在网上找了小技巧,只需要三步,就可以实现批量删除。

第一步
执行sql语句,我的表名都是以’DataSyncV1DelaySample或者’DataSyncV2DelaySample开头的,执行下面的语句得到一批drop table的脚本,后面的where条件可以根据自身的需求进行修改。

select 'drop table '+name+';' from sys.tables where name like 'DataSyncV1DelaySample%' or name like 'DataSyncV2DelaySample%'

SqlServer批量删除表

第二步
复制脚本,执行

第三步
删除了表并不意味着,磁盘空间被释放了,还需要做一些操作,右键相应的数据库->任务->收缩->数据库,点击确定。期间可能需要点时间,执行完毕后,数据库占用的磁盘空间就被释放了。