【问题标题】:Number of total select statement for particular web page?特定网页的总选择语句数?
【发布时间】:2009-05-21 14:58:13
【问题描述】:

我想知道从我的 ASP.Net (.NET 2.0) 应用程序中查看数据库查询总数的最简单方法是什么。

我的应用程序大量使用 sql 2005 数据库,因为所有数据都是动态的,并且所有内容都通过 web.config 中的一个连接字符串。那里启用了连接池。

所以,我想知道对于我在浏览器中加载的特定页面,执行了多少选择语句

我不在乎是否可以从 .net 端或 db 端看到该信息,只要我只能看到与我的数据库的连接。并非所有与该数据库服务器的连接,因为我使用共享数据库服务器并且还有很多其他数据库。

【问题讨论】:

    标签: asp.net sql-server ado.net


    【解决方案1】:

    执行此操作的最佳方法是set up a profiler on your database,然后向您的 ASP.NET 应用程序发出单个请求。探查器将聚合您希望的任何数据,您将能够使用这些数据来确定从您的应用程序发送到 SQL Server 的查询。

    【讨论】:

      【解决方案2】:

      SQL Server Profiler 将列出对您的数据库执行的所有操作。如果您为您的项目使用不同的数据库登录名(如果您不使用,这可能是一个非常好的主意),您可以进行过滤,使其仅显示您登录时的操作(请参阅事件选择、列过滤器和登录名)。

      【讨论】:

        【解决方案3】:

        使用 SQL 事件探查器。您可以将其配置为按您想要的数据库进行过滤并仅显示选择语句。

        【讨论】:

          【解决方案4】:

          如果您的代码中有某种数据库层,您可以修改它以在每次运行 select 语句时写出一条日志消息。然后只需加载一次页面并计算日志语句的数量。这可能有效也可能无效,具体取决于您的代码结构,但这是一种选择。

          编辑:我误读了这个问题。我以为您有多个客户端连接到同一个数据库,而不是同一个数据库服务器。在这种情况下,分析器可能是最佳选择。

          【讨论】:

            【解决方案5】:

            您是否有权访问 SQL Server Profiler?您可以通过加载页面并查看分析器中的效果来设置跟踪以监控此类事情。

            【讨论】:

              【解决方案6】:

              请注意 Profiler 会影响性能,因此最好在 dev 上执行此操作。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多