tsql - 触发触发器时,如何在SQL事件探查器中查看变量值?

标签 tsql triggers sql-server-profiler

我在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/

相关文章:

sql - SELECT 与其他列值的条件不同

mysql - Eclipse DTP 仍然不处理分隔符语句

MySql 触发器语法错误 1064 空单引号

sql-server-2008 - 几个基本的 Sql Profiler 问题

mysql - 分解大型 SQL 命令/性能 (MySQL)

c# - 是否可以编写无法从 SQL 事件探查器跟踪的代码?

SQL:在 WHERE 子句中使用来自 SELECT 的计算字段

sql-server - 动态替换 XML DML 中节点的值

SQL Server 仅允许每种类型中的一种为 True

MySQL插入后触发