我正在调整大量的 SQL Server 2005 脚本来将我们的两个数据库合并在一起。这些脚本从 .cmd 文件运行,该文件调用 sqlcmd 按顺序运行脚本。但是,我遇到了一两个脚本失败的问题。
我想要一种快速的方法来查看一些出错的脚本的状态 - 检查变量值、一些查询的结果,诸如此类。
如果我在 .NET 程序集上遇到此问题,我会使用 Debug.Assert 来扩充代码,或者在我知道会发生故障的地方设置断点,这将暂停程序执行并允许我检查变量值.
我想知道 SQL Server 2005 中是否有类似的功能?
最佳答案
我从未设法使集成调试与 SQL Server 配合良好 - 我通常使用“printf”调试,使用 PRINT或RAISERROR声明。 RAISERROR 可以进行一些基本的参数格式化,将值吐出到消息窗口。例如。如果你有一个int类型的参数@Val1,你可以这样做:
RAISERROR('Val1 = %i',10,1,@Val1) WITH NOWAIT
(WITH NOWAIT 选项导致消息立即显示,而不是缓冲消息/输出的常见 SQL 行为)
关于sql-server - 相当于 SQL Server 的 Debug.Assert,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3201287/