MySQL定义条件

在开发过程中,经常需要对特定的条件进行处理,这些条件可以联系到错误以及子程序中的一般流程控制

<h3 id="定义条件">定义条件

是指事先定义,程序执行过程中遇到的问题 处理程序定义了在遇到这些问题时,应当采取的处理方式,并且,保证存储过程在遇到警告或错误时,能继续执行

定义条件 在编写存储过程中,使用DECLARE语句

<h3 id="语法格式">语法格式

DECLARE condition_name CONDITION FOR [condition_type];

// condition_type的两种形式 [condition_type]: SQLSTATE[VALUE] sqlstate_value | mysql-error_code

<h3 id="参数说明">参数说明

Condition,表示所定义的条件的名称 Condition_type,表示条件的类型 Sqlstate_value和mysql_error_code,都可以表示MySQL的错误 Sqlstate_value,是长度为5的字符串类型错误代码 Mysql_error_code,为数值类型的错误代码

上述语句,指定了需要特殊处理的条件,它将一个名字和指定的错误条件关联起来,这个名字可以随后被用在,定义处理程序的DECLARE HANDLER语句中

定义ERROR1148(42000)错误,名称为command_not_allowed 可以使用两个不同的方法来定义

<h3 id="方法一使用sqlstatevalue">方法一,使用sqlstate_value

DECLARE command_not_allowed CONDITION FOR SQLSTATE ‘42000’;

<h3 id="方法二使用mysqlerrorcode">方法二,使用mysql_error_code

DECLARE command_not_allowed CONDITION FOR 1148;

相关文章

MySQL 死锁 是指两个或多个事务互相等待对方持有的锁,从而导...
在MySQL中,InnoDB引擎通过Next-Key Locking技术来解决幻读问...
在数据库事务管理中,Undo Log 和 Redo Log 是两种关键日志,...
case when概述 sql语句中的case语句与高级语言中的switch语句...
其实很简单,只是为了忘记,做个记录,用的时候方便。 不管是...
1.进入服务,找到mysql服务,在属性里找到mysql的安装路径 2...