【问题标题】:Is there any tool to see the queries run against the database?是否有任何工具可以查看针对数据库运行的查询?
【发布时间】:2010-11-15 04:07:17
【问题描述】:

是否有任何工具可以检查 asp.net 或 sql server 并报告针对数据库运行的所有查询?我问的原因是我将 Linq 用于一个项目,并想仔细检查它对每个页面的实际作用。

理想情况下,我希望在浏览器中查看一个页面,并生成一个为创建该页面而运行的所有查询的报告。

我知道我可以使用调试/断点查看它为单个查询运行的 SQL,并且我知道 LinqPad,但我担心 Linq 会自行进行更多查询以获取我可能无法直接获取的相关数据意识到。有什么(工具/程序/报告/等)像我描述的那样吗?谢谢!

编辑:是否有任何 免费 工具可以做到这一点?我正在使用 Sql Server 2008 Express,不幸的是没有 SQL Profiler。

【问题讨论】:

    标签: asp.net sql sql-server linq-to-sql reporting


    【解决方案1】:

    SQL Profiler 会这样做。

    【讨论】:

      【解决方案2】:

      当然,有一个名为SQL Profiler 的SQL 工具。它确实需要提升数据库权限才能运行探查器。

      有一个关于如何在TechRepublic 上运行 Profiler 的不错的教程。

      另一个选项是NHibernate Profiler。我知道它不像 SQL Profiler 那样“免费”,从未使用过,但它的屏幕截图看起来很酷。

      【讨论】:

        【解决方案3】:

        Profiler 是所有这些工具中最好的工具,但对于没有经验的人来说可能会很昂贵。

        您也可以尝试执行“exec sp_who”,然后执行“dbcc inputbuffer (111)” - 只需将进程 ID 放在 111 的位置即可。

        【讨论】:

          【解决方案4】:

          既然您使用的是 SQL Server Express,那么这个工具怎么样?

          Profiler for Microsoft SQL Server 2005/2008 Express Edition

          Microsoft SQL Server 系列包括 免费快递版,完全 功能,但有一些 令人失望的限制 防止在开发中使用它 过程。其中之一是缺席 分析工具,标准 SQL 分析器 不包括在内。但是,现在你有 使用速成版的能力 调整你的系统。 SQL Server 速成 Edition Profiler 提供了最 功能标准分析器所做的, 例如选择要分析的事件, 设置过滤器等。现在有 没有模拟免费工具。

          Download Here

          【讨论】:

            【解决方案5】:

            对于 LINQ to SQL 查询,您还可以使用DataContext.Log 属性将查询输出到TextWriter,因此您可以执行诸如写入调试器输出窗口或(如我所用)到 log4net 之类的操作.

            这些链接可能会有所帮助:

            不会涵盖不是由 L2S 生成的东西,所以这可能不是你的全部解决方案......但我发现它很有帮助。

            【讨论】:

              【解决方案6】:

              在 ASP.NET 中记录 LINQ to SQL 查询的一种快速而肮脏的方法是(假设是 Northwind.Dbml):

              NorthwindDataContext context = new NorthwindDataContext();
              context.Log = Response.Output;
              

              这会将所有查询写入响应流。令人讨厌,但无需调试器或分析器等即可即时满足。

              【讨论】:

                【解决方案7】:

                这个仅在前 45 天免费,但它为您提供运行时分析/日志记录以及一堆过滤器选项、SQL Server 查询执行计划日志记录等。专为分析 L2S 应用程序而构建:

                http://www.huagati.com/L2SProfiler

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 2021-07-24
                  • 1970-01-01
                  • 2012-02-10
                  • 2011-07-06
                  • 1970-01-01
                  • 2016-11-20
                  • 2011-01-10
                  相关资源
                  最近更新 更多