我在SQL Server 2008表上创建“更新后”触发器。触发器可以正常触发,但是它在另一个表中更新的值之一不正确。我正在查看SQL事件探查器中的跟踪,但在那里看不到变量的值。
我阅读了this other question,因此将RPC:已完成事件添加到了跟踪中,但是由于某种原因,跟踪中没有该事件的实例。也就是说,我在轨迹中的其他位置看到了它,但是没有触发触发器。
只是(希望)很清楚,我的触发器正在执行这样的SP:
EXEC SP_UpdateSomeStuff @variable1, @variable2
...这就是我在跟踪中看到的全部。我希望看到的是:
EXEC SP_UpdateSomeStuff @variable1 = 111, @variable2 = 222
...但是我不知道要添加哪些事件来实现这一目标。感谢您的任何想法。
最佳答案
“ RPC”代表“远程过程调用”-通常,“从外部”提交给SQL Server的查询。触发事件除了外部调用外什么都没有,这应该就是为什么您在Profiler中看不到它们的原因。
我怀疑您将无法通过SQL Profiler查看您的参数值。您是否可以暂时放入调试代码(insert DebugTable values (Wvariable1, etc.)
,以便将要使用的值记录到某处?
关于tsql - 触发触发器时,如何在SQL事件探查器中查看变量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9303516/