我想知道是否有办法检查SQL Server的执行日志。我不是在讨论专有事务日志或错误日志。但只是最近执行的日志以冗长的方式进行调试。
例如,我有一个调用存储过程,传入参数和填充网格视图等的Web应用程序。在SQL管理工作室中,我想看(通过日志文件或运行T-SQL查询)执行了存储过程或sql语句,传入的参数的值是什么以及返回的值是什么等。
提前感谢您的帮助。
答案 0 :(得分:2)
通常,这是使用Profiler应用程序实现的:
监控每个Transact-SQL活动 用户。
您可以创建捕获的跟踪 与会议有关的活动, ExistingConnection和TSQL事件 类。包括所有数据列 跟踪,不指定任何事件 标准,并对捕获的组进行分组 DBUserName的事件。
监控SQL:BatchCompleted
和SP:Completed
事件确切地说明了用户执行的操作。添加SP:StmtCompleted
会在调用的过程中按语句提供执行语句的跟踪,但是非常昂贵并且会降低服务器的速度。您可以获取传入的参数值,但是您将无法获取返回给客户端的值和行集。
使用SQL事件探查器进行监控只能在测试环境中进行,因为对生产计算机的影响很大。使用sp_trace_xxx过程完成的服务器端跟踪更好,但如果跟踪频繁生成的事件(如每个语句),它们仍会产生严重影响。