sql-server – 如何计算SQL Server 2008中存储过程和表的总数

前端之家收集整理的这篇文章主要介绍了sql-server – 如何计算SQL Server 2008中存储过程和表的总数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在sql Server 2008 R2中有数据库Test1。在实时服务器上,我从那里备份,并在本地机器上将其恢复为Test2,并添加了一些表和过程。

如果我们将Test2还原到实时服务器,那么任何可以获取表名和过程名称查询只能在测试2中,而不是在测试1中,否则sql Server将其视为完全不同的数据库

如果我只想知道Test1和Test2数据库的差异数量,那么查询是什么

解决方法

这将给你计数表和存储过程。
SELECT 
    CASE TYPE 
        WHEN 'U' 
            THEN 'User Defined Tables' 
        WHEN 'S'
            THEN 'System Tables'
        WHEN 'IT'
            THEN 'Internal Tables'
        WHEN 'P'
            THEN 'Stored Procedures'
        WHEN 'PC'
            THEN 'CLR Stored Procedures'
        WHEN 'X'
            THEN 'Extended Stored Procedures'
    END,COUNT(*)     
FROM SYS.OBJECTS
WHERE TYPE IN ('U','P','PC','S','IT','X')
GROUP BY TYPE

您可以在sys.objects中找到数据库中的所有类型的对象。您将必须在每个数据库上运行此查询以查看对象的数量

您可以找到有关sys.objects here中存储的内容的所有信息。

原文链接:https://www.f2er.com/mssql/84632.html

猜你在找的MsSQL相关文章