sql-server-2008 - 如何调试从 SQL Server 2008 中的 Service Broker 队列运行的存储过程?

标签 sql-server-2008 debugging service-broker

我有一个带有复杂触发器的表,它最终调用 Service Broker 来运行一个带有表(自定义类型)参数的存储过程。

我可以“步入” INSERT 和触发器,但我不能步入服务代理存储过程,因为据我所知,它是异步运行的。

有没有办法利用 Service Broker 运行的存储过程并调试它?

谢谢。

最佳答案

要调试它(使用管理工作室调试器),您可以更改队列以关闭激活。

ALTER QUEUE queue_name 
WITH ACTIVATION (STATUS = OFF); 

运行插入语句,然后像使用任何存储过程一样手动运行和调试激活过程。
这样,在调试时队列中就会有一些东西。
然后用完STATUS = ON恢复激活。

关于sql-server-2008 - 如何调试从 SQL Server 2008 中的 Service Broker 队列运行的存储过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7704633/

相关文章:

sql-server-2008 - 自动启用命名管道和 TCP/IP 协议(protocol) SQL Server 2008 R2

sql - 创建触发器数据的临时表

ios - 基本客户端/服务器示例代码适用于 iOS 模拟器,但不适用于设备

powershell - 如何在交互式 Powershell 远程处理 session 中使用 cdb.exe

sql - 在相同的 sqlconnection 但不同的 sql 命令上启动两个 SqlDependency

sql - 如何在带有 JOIN 的查询中使用 WITH (NOLOCK)

visual-studio-2008 - 面向数据库专业人员的 Visual Studio 2008

java - 在 IntelliJ IDEA 中的 Debug模式下设置最终字段的值

c# - 错误 : When Using SqlDependency Without Providing an Options Value

sql-server - 从 SQL Server Service Broker 调用带有 SSISDB 实现的 SSIS