MySQL定义条件

来源:互联网 发布:淘宝一星店能刷几单? 编辑:程序博客网 时间:2024/06/02 05:05

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

定义条件

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

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

语法格式

DECLARE condition_name CONDITION FOR [condition_type];

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

参数说明

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

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

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

方法一,使用sqlstate_value

DECLARE command_not_allowed CONDITION FOR SQLSTATE ‘42000’;

方法二,使用mysql_error_code

DECLARE command_not_allowed CONDITION FOR 1148;

原创粉丝点击