D DINGHELLO Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #1 執行一個存儲過程,在處理時產生錯誤,中斷處理,前台數據顯示為空白,但什么提示也沒有。 現在我想在前台顯示處理時遇到的錯誤信息,如“無效的字段名AAA”什么的就行了。
A armyjiang Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #2 这种错误都需要你的存储过程进行捕获,然后再作为一个返回变量返回到delphi并提示给操作用户。 不能说存储过程出错就让它出错吧?和delphi开发的程序一样,存储过程也需要容错处理的设计。
D DINGHELLO Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #3 兄台能不能來點過程的容錯代碼? 現在我用exec procA '參數1' 來執行,如果運行中出錯@@error的值還是0,所以根據這個值判斷不了。
M marco_hsu Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #4 你建个输出参数,不过具体的错误就不知怎么捕捉了,我一般都是统一为,数据操作失败之类的
X xuxiaohan Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #5 在存储过程中用RAISERROR 发出一个错误信息给应用程序,合不合要求?
D DINGHELLO Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-12 #6 TO marco_hsu: 這種方法對只告訴用戶出錯,不知哪里出錯。(錯誤信息在sysmessage表里,但在知道哪個錯誤號才行)。不過真的找不到方法也只能考慮這種方法 TO xuxiaohan: RAISERROR 是自己知道錯誤的情況下顯示給前台的,但過程處理時不知几時出錯。
TO marco_hsu: 這種方法對只告訴用戶出錯,不知哪里出錯。(錯誤信息在sysmessage表里,但在知道哪個錯誤號才行)。不過真的找不到方法也只能考慮這種方法 TO xuxiaohan: RAISERROR 是自己知道錯誤的情況下顯示給前台的,但過程處理時不知几時出錯。
就 就爱你一个 Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-14 #7 若前台是用ADO连接,则通过adoCon.Errors.Count找出错误数目,用adoCon.Errors(kk).Description找出第kk个错误的具体错误信息
D DINGHELLO Unregistered / Unconfirmed GUEST, unregistred user! 2004-01-15 #8 用三層結構,前台是clientDataset,使用commandtext傳送 exec proc1