存储过程的使用(四)使用DECLARE定义条件和处理程序

database

定义条件和处理程序是事先定义程序执行过程中可能遇到的问题,并且可以在处理程序中定义解决这些问题的办法,可以简单理解为异常处理,这种方式可以提前预测可能出现的问题,并提出解决办法,从而增强程序健壮性,避免程序异常停止。MySQL通过DECLARE关键字来定义条件和处理程序。

定义条件

MySQL中可以使用DECLARE关键字来定义条件。其基本语法如下:

-- 条件定义语法

DECLARE  condition_name  CONDITION  FOR  condition_value  

-- condition_value的定义格式

SQLSTATE [VALUE] sqlstate_value | mysql_error_code

其中,condition_name表示条件的名称,condition_value参数表示条件的类型;sqlstate_value参数和mysql_error_code参数都可以表示MySQL的错误。如常见的ERROR 1146 (42S02)中,sqlstate_value值是42S02,mysql_error_code值是1146,简单案例如下:

-- 定义主键重复错误

-- ERROR 1062 (23000): Duplicate entry "60" for key "PRIMARY"

-- 方法一:使用sqlstate_value  

DECLARE  primary_key_duplicate  CONDITION  FOR  SQLSTATE  "23000" ;  

-- 方法二:使用mysql_error_code  

DECLARE primary_key_duplicate CONDITION  FOR  1062 ;

本文来源于:宋文超super,专属平台有csdn、云海天(SegmentFault)、 简书、 开源中国(oschina),转载请注明出处。

以上是 存储过程的使用(四)使用DECLARE定义条件和处理程序 的全部内容, 来源链接: utcz.com/z/534963.html

回到顶部