我编写了一个T-SQL查询,其中包含对有效EmployeeNo的测试。如果EmployeeNo无效,我会执行以下操作:
RAISERROR(5005, 10, 1, N'Invalid Employee No')
return @@Error
回到VB.Net我测试sql异常,发现当Employee No无效时,error.number不是5005,正如我所料,但是2732。
对此有何解释?
谢谢。
答案 0 :(得分:1)
您不能在自己的代码中引发错误5005。只有数据库引擎才能做到这一点。
错误2732表示您无法引发messages < 50000
SELECT description FROM sys.sysmessages m WHERE m.error = 2732 AND msglangid = 1033
Error number %ld is invalid. The number must be from %ld through %ld and it cannot be 50000.