系统存储过程sp_MSforeachtable和sp_MSforeachdb使用说明
1.简介: 作为DBA会经常需要检查所有的数据库或用户表,比如:检查所有数据库的容量;看看指定数据库所有用户表的容量,所有表的记录数...,我们一般处理这样的问题都是用游标分别处理处理,比如:在数据库检索效率非常慢时,我们想检查数据库所有的用户表,我们就必须通过写游标来达到要求;如果我们用sp_MSforeachtable就可以非常方便的达到相同的目的: EXEC sp_MSforeachtable @command1="print '?' DBCC CHECKTABLE ('?')" 系统存储过程sp_MSforeachtable和sp_MSforeachdb,是微软提供的两个不公开的存储过程,从mssql6.5开始。存放在SQL Server的MASTER数据库中。可以用来对某个数据库的所有表或某个SQL服务器上的所有数据库进行管理,后面将对此进行详细介绍。 2.参数说明: @command1 nvarchar(2000), --第一条运行的SQL指令 @replacechar nchar(1) = N'?', --指定的占位符号 @command2 nvarchar(2000)= null, --第二条运行的SQL指令 @command3 nvarchar(2000)= null, --第三条运行的SQL指令 @whereand nvarchar(2000)= null, -