【推荐】(sqlServer)不公开存储过程
sp_Msforeachtable与sp_Msforeachdb详解
——通过知识共享树立个人品牌。
一.简要介绍:
系统存储过程sp_MSforeachtable和sp_MSforeachdb,是微软提供的两个不公开的存储过程。从mssql6.5开始,存放在sql Server的MASTER数据库中。可以用来对某个数据库的所有表或某个sql服务器上的所有数据库进行管理,下面将对此进行详细介绍。
如:检查整个数据库的容量,看指定数据库所有用户表的容量,所有表的记录数等等,我们一般处理这样的问题都是通过游标来达到要求。
如果我们用sp_MSforeachtable就可以非常方便的达到相同的目的,
如:SQL查询所有用户表的列表,详细信息,如:记录数,表占用大小等
二.各参数说明:
以后为sp_MSforeachtable的参数,sp_MSforeachdb不包括参数@whereand
我们在master数据库里执行下面的语句可以看到两个proc详细的代码
usemaster
execsp_helptextsp_MSforeachtable
execsp_helptextsp_Msforeachdb