WEB开发网
开发学院数据库MySQL MySQL5的异常处理 阅读

MySQL5的异常处理

 2006-04-07 10:45:12 来源:WEB开发网   
核心提示: 2. DECLARE CONTINUE HANDLER声明CONTINUE异常处理CREATE TABLE t4 (s1 int,primary key(s1));//CREATE PROCEDURE p23 ()BEGINDECLARE CONTINUE HANDLERFOR SQLST

2. DECLARE CONTINUE HANDLER声明CONTINUE异常处理

CREATE TABLE t4 (s1 int,primary key(s1));//

CREATE PROCEDURE p23 ()

BEGIN

DECLARE CONTINUE HANDLER

FOR SQLSTATE '23000' SET @x2 = 1; <--

SET @x = 1;

INSERT INTO t4 VALUES (1);

SET @x = 2;

INSERT INTO t4 VALUES (1);

SET @x = 3;

END;//

这次我将为SQLSTATE值定义一个处理程序。还记得前面我们使用的MySQL错误代码1216吗?事实上这里的23000SQLSTATE是更常用的,当外键约束出错或主键约束出错就被调用了。

3. DECLARE CONTINUE HANDLER

CREATE TABLE t4 (s1 int,primary key(s1));//

CREATE PROCEDURE p23 ()

BEGIN

DECLARE CONTINUE HANDLER

FOR SQLSTATE '23000' SET @x2 = 1;

SET @x = 1; <--

INSERT INTO t4 VALUES (1);

SET @x = 2;

INSERT INTO t4 VALUES (1);

SET @x = 3;

END;//

这个存储过程的第一个执行的语句是"SET @x = 1"。

4. DECLARE CONTINUE HANDLER example

CREATE TABLE t4 (s1 int,primary key(s1));//

CREATE PROCEDURE p23 ()

BEGIN

DECLARE CONTINUE HANDLER

FOR SQLSTATE '23000' SET @x2 = 1;

SET @x = 1;

INSERT INTO t4 VALUES (1);

SET @x = 2;

INSERT INTO t4 VALUES (1); <--

SET @x = 3;

END;//

运行后值1被插入到主键表中。

5. DECLARE CONTINUE HANDLER

CREATE TABLE t4 (s1 int,primary key(s1));//

上一页  1 2 3 4 5  下一页

Tags:MySQL 异常 处理

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接