use [db_name]
declare @sql nvarchar(max)
select @SQL =
(select ';
DELETE FROM ' + quotename(TABLE_SCHEMA) + '.' +
quotename(TABLE_NAME) from INFORMATION_SCHEMA.TABLES where TABLE_TYPE = 'BASE TABLE'
and TABLE_NAME not in ('mytab1', 'mytab2')
ORDER BY Table_Schema, TABLE_NAME
FOR XML PATH(''), type).value ('.','nvarchar(max)')
print @SQL -- verify
Он создаст запрос на удаление и использует этот запрос, удаляя нужную таблицу и пропуская ее не обязательно.