在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 并继续执行。

更新于:2020年6月22日

516 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告