我用adoconnection的execute来执行sql,该sql中调用了一个储存过程,但不管储存过程出什么错,系统就是不报错。
请各位大侠协助。

解决方案 »

  1.   

    1:在储存过程中增加一回传参数 @result,存储过程执行完后的SQL脚本尾增加几句
      if @@error<>0 set @result='00' else set @result='01' //如果脚本执行错误返加 002:delphi中调用存储过程后,读返回参数@result
    if datamodule3.khddStoredProc.Parameters.ParamValues['@result'])<>'01' then
      begin
       //你的代码  end;
     
      

  2.   

    begin
        if @@error<> then goto errorcode
    ........
    errorcode:
        --你所要的操作
    一般这样用:
       begin  tran
           .....   
           if @@error<>0 then errorcode
       commit  tran
       rollback
          errorcode:
           
    end