怎样知道存储过程执行到一半就错了。(100分)

  • 主题发起人 主题发起人 Shd
  • 开始时间 开始时间
S

Shd

Unregistered / Unconfirmed
GUEST, unregistred user!
简单的说,怎样把存储过程,变为“存储函数”。
需要一个返回值确定是否执行完了。执行结果是否正确。
我的一般用法是加入一个传出参数。各位还有什么好的方法吗?
 
一般是这样了,听
 
用事物处理呀
 
把整个写库流程作为一个事务来处理,同时也能返回操作结果。
 
对,用事务
 
当然用事务了,我是问返回值的问题。
例如:
Create Procedure Pro1
@p1 int Output
as
@p1 = 9 --其他错误
begin Trans Tr1
@p1 = 1 --Table1错误
Update Table1 set T1Field1 = '123'
@p1 = 2 --Table2错误
Update Table2 set T2Field1 = '456'
@p1 = 2 --Table3错误
Insert into Table3(T3Field1, T3Feild2) Values ('qqq', 'www')
@p1 = 0 --成功
End trans
 
不知道你用的是什么数据库,如果是sql server或者sybase可以在最后用return语句返回一个
整数值做为标志(不指定的话好像就是返回0),你可以自己定义每个值的含义。
 
将整个存储过程作为一个事务来处理应该是教好的方法。
 
接受答案了.
 
后退
顶部