你可以在Delphi里取出EDatabaseError里的Message。

解决方案 »

  1.   

    在触发器里写:if ...
      raiserror('显示用户已经借出了5本书,不能再借了',16,3)
    在delphi里用
    Except
      On E : Exception do
      // 可以将 E.Message 取出来看看
    end ;
      

  2.   

    你可以定义ERROR MESSAGE 在SYSMESSAGE表中,exec sp_addmessage 50001,16,'test error message'然后在TRIGGER,STORED PROCEDURE中可以IF @@ERR0R<>0
    BEGIN
    RAISERROR(50001,16,1)
    ENDSELECT DESCRIPTION FROM MASTER..SYSMESSAGES WHERE ERROR=@@ERROR即可获得错误的信息,并且返回到CLIENT.