declare @tpsql nvarchar(2000) set @tpsql=N'update CMSEPA set EPA019=('+@EHC024+') WHERE EPA001=10000'
EXECUTE sp_executesql @tpsql if (@@error<>0)
begin
set @errorcode='计算规则设置发生错误!'
return
end 这个语句执行错误就直接退出了,没有任何信息带出,(@errorcode=''),怎么捕捉得到了?
EXECUTE sp_executesql @tpsql if (@@error<>0)
begin
set @errorcode='计算规则设置发生错误!'
return
end 这个语句执行错误就直接退出了,没有任何信息带出,(@errorcode=''),怎么捕捉得到了?
raiserror('生成一个错误消息',11,1)
end try
begin catch
select error_message() as 错误消息,
error_severity() as严重级别,
error_state() as state;
end catch
print '@@error = ' + ltrim(@err)
/*
消息 8134,级别 16,状态 1,第 1 行
遇到以零作除数错误。
@@error = 8134
*/
exec @err = sp_executesql N'select 1/0'
print '@@error = ' + ltrim(@err)
/*
消息 8134,级别 16,状态 1,第 1 行
遇到以零作除数错误。
@@error = 8134
*/