在 MySQL 函數中引發錯誤
為了確保資料完整性並處理 MySQL 函數中的無效輸入,引發錯誤至關重要。在 MySQL 5.5 及更高版本中,一種稱為訊號的強大機制允許開發人員建立自訂錯誤條件。
訊號語法
訊號使用下列語法來引發錯誤:
SIGNAL SQLSTATE error_code SET MESSAGE_TEXT = 'error_message';
其中:
範例用法
考慮以下範例:
CREATE FUNCTION my_function(a INT, b INT) RETURNS INT BEGIN IF a = 0 OR b = 0 THEN SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Invalid input: Zero values not allowed.'; ELSE RETURN a * b; END IF; END;
此函數檢查任一參數是否為等於零,如果為 true,則引發自訂錯誤。
命令列示範
您可以透過執行下列語句來測試命令列客戶端中的錯誤處理:
mysql> CALL my_function(0, 5); ERROR 1644 (45000): Invalid input: Zero values not allowed.
以上是如何在 MySQL 函數中引發自訂錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!