SQL过程异常的捕获
空中猎手 2005-11-23 01:51:21 使用的是SQL SERVER2000
我要实现的功能是,当过程正确执行时返回一个提示正确的字符串,出错时返回一个提示出错的字符串。下面是我的写法:
begin tran
insert into table1 values(....)
if @@error<>0
begin
set @msg = '出错'
select @msg as MESSAGE
rollback
end
set @msg = '成功'
select @msg as MESSAGE
commit tran
但是上面这个方法如果insert出错时就直接中止过程乐,不会执行后面的语句,比如insert一个违返唯一性的记录,或是字段的值类型不正确等。
有什么好的解决方法么?