ใน MS SQL Server มี Stored Procedure ตัวหนึ่งที่มีประโยชย์ในการจะทำอะไรกับ Table ทุก Table ใน Database
ตัวอย่างการใช้ Stored Procedure sp_MSForEachTable
- นับจำนวน record ทั้งหมดของทุก Table ใน Database
EXEC sp_MSForEachTable ‘SELECT ”?”, COUNT(*) FROM ?’
หรือ
sp_MSforeachtable @command1=” declare @tmp int select @tmp=count(*) from ? Print ‘Table Name 😕 |’ + convert(nvarchar, @tmp) ”
- Rebuilding indexes on every table in the database.
EXEC sp_MSforeachtable @command1=”print ‘Rebuilding indexes for ?’ ALTER INDEX ALL ON ? REBUILD WITH (FILLFACTOR = 90)”
GO
- Reorganizing indexes on every table in the database
EXEC sp_MSforeachtable @command1=”print ‘Reorganizing indexes for ?’ ALTER INDEX ALL ON ? REORGANIZE”
GO