我在我的数据库中有50多张表,我想删除其中48张表中的所有数据。
我尝试使用
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
EXEC sp_MSForEachTable 'DELETE FROM ? '
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL'
EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?'
GO
但是它会删除所有表中的数据。
有人能建议我在查询中做出哪些更改,以便从除TABLE1、TABLE2等之外的所有表中删除数据吗?
EXEC sp_MSForEachTable 'DELETE FROM ? '
我正在使用SQL Server 2008R2。