簡體   English   中英

'返回'/中止mySql存儲過程

[英]'Return'/Abort mySql stored procedure

我想在不滿足條件時從存儲過程中止/退出/返回。 我不確定該怎么做。 谷歌搜索對我沒有太大幫助,因為:

  • 我們服務器上的MySql版本是5.1(<5.5,因此沒有信號sqlstate)。
  • 我不想將所有內容都放在if..then..else語句中(在我的情況下,會有多層嵌套)
  • 我不想調用an_invalid_procedure引發異常。

有其他選擇嗎?

出問題了...

...
BEGIN
 <do stuff>
 IF (<your condition>) THEN
  <do more stuff>
 END IF;
END$$

在這種情況下,我要做的是:

  1. 創建一個稱為errors表,該表的一列包含文本錯誤消息和其上的UNIQUE索引。 我在表格中填寫了我要支持的錯誤。

  2. 當我需要引發特定錯誤時,將錯誤消息插入errors表。 由於它已經存在,因此我違反了UNIQUE鍵,因此引發了錯誤。 在我的應用程序中,我可以監視MySQL錯誤#1062(這是“鍵的重復值...”錯誤的代碼,並使用regexp提取我的錯誤消息以顯示給用戶/對其進行記錄/以其他方式顯示;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM