如何检查存储过程调用的日志?

时间:2011-08-22 17:03:41

标签: sql-server

SQL Server中是否存在某种类型的日志记录(或某种启用简单日志记录的方式),这将允许我检查是否调用了存储过程,调用它时以及传递和返回了哪些参数?我已经看到了一些插件脚本,但不确定这是否内置于SQL Server中?

3 个答案:

答案 0 :(得分:6)

它不是内置的

您需要设置profiler trace或向存储过程添加代码以进行记录

答案 1 :(得分:5)

内置的内容并不多。如果您使用的是最新版本的SQL Server(此问题在这一点上不是很精确),您可以查看the DMV sys.dm_exec_procedure_stats,但它不会有单独的调用,只是聚合。

如果您对特定存储过程感兴趣,可以运行非常有针对性的 server-side trace server-side trace。 (对不起,因为Quest决定杀死SQLServerPedia,我找不到我引用的原帖。)

我写了一篇关于构建自己的日志记录并将其添加到n个存储过程的文章:

http://www.mssqltips.com/tip.asp?tip=2003

您可以轻松扩展它以包含所谓的参数。

答案 2 :(得分:2)

您可以使用SQL Server Profiler工具执行此操作:

http://msdn.microsoft.com/en-us/library/ms187929.aspx