在MySQL中,我们如何在处理错误时声明一个处理程序?
通过抛出正确的错误消息来处理错误非常重要。MySQL 提供了一个处理程序来处理错误。我们可以使用以下语法声明一个处理程序:
处理程序语法
DECLARE handler_action FOR condition_value statement;
上述语法显示我们需要使用 DECLARE HANDLER 语句来声明一个处理程序。如果一个条件的值与 condition_value 匹配,则 MySQL 将执行该语句,并根据 action 继续或退出当前代码块。以下是上述语法中的三个主要部分:
Handler_action 有两种类型,可以接受以下值之一:
- CONTINUE - 如果 handler_action 为 'CONTINUE',则继续执行封闭的代码块。
- EXIT - 如果 handler_action 为 'EXIT',则终止执行封闭的代码块。
Condition_value 指定激活处理程序的特定条件或条件类。它可以接受以下值之一:
- ERROR CODE - condition_value 可以是 MySQL 错误代码。
- SQLSTATE - condition_value 也可以是 SQLSTATE。
- SQLWARNING - condition_value 也可以是 SQLWARNING。
- NOTFOUND - condition_value 也可以是 NOTFOUND。
- SQLEXCEPTION - condition_value 也可以是 SQLEXCEPTION。
Statement 可以是一个简单的语句或由 BEGIN 和 END 关键字括起来的复合语句。
示例
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET got_error = 1;
在上面的示例中,处理程序意味着如果发生错误,则将 got_error 变量的值设置为 10 并继续执行。
广告