SQL Server 2008 有内置的调试器吗?我有一个存储过程,如果输入一串字母字符(而不是数字),它会返回错误,并且我希望能够在返回错误之前确定它到达哪一行。
是的,您可以调试SQL存储过程、函数、触发器等
SQL Server Management Studio 可以调试 SQL Server 2008 中的存储过程。打开存储过程,不要点击“执行”按钮(红色感叹号),而是点击“调试”按钮(绿色“播放”箭头)。
我会在各个点添加 PRINT“检查点 A 通过”类型语句,以查看它到达了多远。输出将显示在“消息”选项卡上。这是一种蹩脚的调试方式,但它确实有效。
insert into blah blah blah
print 'Passed the insert'
select blah
print 'Passed the select'
您可以尝试Transact SQL 调试器 我从未使用过它,但记得在某处读到过它。
N'' +[TitleOfCourtesy]+ N'' +[FirstName]+ N' ' +[LastName]+ N'there are ' +abs(datediff(day,dateadd(year,(year(getdate())-year([BirthDate])),[BirthDate]),getdate()))+ N' days left untill your birthdate'