首頁 > 資料庫 > mysql教程 > mysql發生錯誤如何處理

mysql發生錯誤如何處理

coldplay.xixi
發布: 2020-10-23 09:31:08
原創
3082 人瀏覽過

mysql發生錯誤的處理方法:1.如果發生1062錯誤,執行SELECT語句;2、SQL選擇語句沒有回傳值時,設定【l_done=1】後繼續執行;3、產生錯誤訊息後退出目前區塊或預存程序;4、如果任何錯誤,設定【l_error】為1後執行。

mysql發生錯誤如何處理

mysql發生錯誤的處理方法:

1、如果任何錯誤(不是NOT FOUND ) , 設定l_error為1 後繼續執行:

DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
SET l_error=1;
登入後複製

2、如果發生任何錯誤(不是NOT FOUND),執行ROLLBACK和產生一條錯誤訊息後退出目前區塊或預存程序。

DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
ROLLBACK;
SELECT 'Error occurred – terminating';
END;
登入後複製

3、如果MySQL 1062錯誤(重複的健康值)發生,執行SELECT語句(向呼叫程式發送訊息)後繼續執行

DECLARE CONTINUE HANDER FOR 1062
SELECT 'Duplicate key in index';
登入後複製

4、如果SQLSTATE 2300錯誤(重複的健康值)發生,執行SELECT語句(向呼叫程式發送訊息)後繼續執行

DECLARE CONTINUE HANDER FOR SQLSTATE '23000'
SELECT 'Duplicate key in index';
登入後複製

5、當遊標或SQL 選擇語句沒有傳回值時,設定l_done=1 後繼續執行

DECLARE CONTINUE HANDLER FOR NOT
FOUND
SET l_done=1;
登入後複製

6、此例除了用SQLSTATE 變數而非命名條件以外,跟前一個例子一樣

DECLARE CONTINUE HANDLER FOR SQLSTATE '02000 '
SET l_done=1;
登入後複製

7、此例除了用MySQL 的錯誤碼變數而不是命名條件或SQLSTATE 變數以外,跟前兩個例子一樣

DECLARE CONTINUE HANDLER FOR 1329
SET l_done=1;
登入後複製

更多相關免費學習推薦:#mysql教學##(影片)

以上是mysql發生錯誤如何處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板