我正在重构遗留系统,该系统依赖于庞大的存储过程,并且依赖的存储树/ UDF的调用树也很大,并且互连的服务器很多。
生产存储过程运行正常,而测试1失败
用户'user_test'登录失败
我无法从error_procedure() and error_line()
获得更多详细信息。
完整的输出:
(受影响的1行)
(受影响的1行)
...跳过
ErrorNumber = [18456]; ErrorSeverity = [14]; ErrorState = [1]; ErrorProcedure = []; ErrorLine = [1]; ErrorMessage = [用户'user_test'的登录失败。]
消息18456,第14级,状态1,第1行
用户'user_test'登录失败。
显然,某些链接服务器未在测试环境中正确设置。因此,我需要设置它们或模拟/注释外部调用。我无法在测试服务器上调试存储过程。
如何在代码中找到引发此错误的确切行而不在SQL的每一行之后添加跟踪?
系统在Windows Server 2012 R2的SQL Server 2016中运行。