7

我正在使用 C# 对 SQL Server 2005 实例进行参数化查询,并且我想查看针对数据库运行的 SQL 以进行调试。在数据库日志或 Visual Studio 调试器中,我是否可以在某个地方查看参数化命令的输出 SQL 是什么?

4

2 回答 2

4

使用 SQL Server Profiler 查看 sql

http://www.eggheadcafe.com/articles/sql_server_profiler.asp

http://msdn.microsoft.com/en-us/library/ms187929(SQL.105).aspx

于 2010-05-27T17:32:55.203 回答
1

SQL Profiler 是最好的解决方案,但如果您需要更有机的应用程序,您可以在生产、QA 等中部署和启用/禁用......那么您可以围绕 System.Data.SqlClient 提供程序构建一个包装器(例如. 在配置文件中注册的提供程序为... providerName="System.Data.SqlClient" )。

这实际上就像一个拦截代理,它可以让您访问通过提供者(例如,在您的应用程序和数据库客户端之间)传递的所有信息。这将允许您抽取您需要的内容、拦截、修改、聚合和/或丰富它。这有点高级,但打开了捕获整个信息范围的大门,并且可以作为单独的关注层插入/替换/删除。

于 2010-05-27T17:39:28.793 回答