对象名 'lsa' 无效错误没有办法用@@ERROR测到.

解决方案 »

  1.   

    ALTER  PROCEDURE test
    AS
    Begin TRANSACTIONupdate ls1 set ye=2003  --可正常更新
    select * from lsa       --lsa是不存在的表if @@error<>0
    rollback TRANSACTION
    ELSE commit TRANSACTION
      

  2.   

    lsa不存在编译存储过程就不能通过。 begin TRANSACTION
        update ....
        if @@error <>0 '事务的回滚
        begin
          rollback transaction
          raiserror('错误信息....',16,1)
          return 1
        end
     commit TRANSACTION
    这么简单的几句就不要写存储过程过程,加重数据库的负载,ado就有
    事物,足够用了
      

  3.   

    gzhughie,你给的语句行不通,当运行到select * from lsa时已经中断了,可能jinfeng_wang说的有道理。
      

  4.   

    cm8983,存储过程是不会加重数据库负载,运行起来比在ado中写sql要快。
    再说我现在只是一个实验的例子,并不是应用到真正的程序中