T-SQL筆記26_透過一個指令刪除特定DB下所有資料表

 
有時拿到一份別人匯出的SQL指令
可能沒指定好就直接執行但預設可能停留在master DB此時就會有一個悲劇就是
不小心把原本要建立的20~50多個table (甚至更多)鍵錯地方直接弄到master DB下了

此時一個一個右鍵刪除或下drop一天可能就過去了

一個指令刪除特定DB下所有資料表

1
2
3
4
use {目標資料庫}; 
go
 sp_msforeachtable @command1="drop table ?"
 go

1
2
3
4
use master; 
go
 sp_msforeachtable @command1="drop table ?"
 go

此時就可以輕輕鬆鬆透過該段指令
針對master把自己多加進去的table刪乾淨


要檢查則可透過這段SQL查看看

1
select * from sys.tables where is_ms_shipped=0 order by name asc




留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header