16.10.2 在存储过程中定义条件和处理程序
1.创建存储过程
创建一个名称为InsertDataWithCondition的存储过程,在存储过程中,定义处理程序,捕获sqlstate_value值,当遇到sqlstate_value值为23000时,执行CONTINUE操作,并且将@proc_value的值设置为1。
接下来,将@x变量的值设置为1,向t_goods表中插入一条主键编号为1000011的数据,并将@x变量的值修改为2;随后,再次向t_goods表中插入一条主键编号为1000010的数据,并将@x变量的值修改为3。
创建名称为InsertDataWithCondition的存储过程,在MySQL命令行中执行代码。
mysql> DELIMITER $$
mysql> CREATE PROCEDURE InsertDataWithCondition()
-> BEGIN
-> DECLARE CONTINUE HANDLER FOR SQLSTATE '23000' SET @proc_value=1;
-> S