0

我有一个存储过程,它操作两个表,这两个表也使用:

DECLARE EXIT HANDLER FOR 1062 
BEGIN 
    ...
END;

我的问题是我希望 EXIT HANDLER 只捕获一张表的重复项,这可能吗?

谢谢你,凯特

4

1 回答 1

2

我不确定这是否合适,但我找到了一个可行的解决方法......

CREATE PROCEDURE some_procedure (IN some_id INT(11))
BEGIN

    INSERT INTO table1 ...

    SPROC:
    BEGIN

        DECLARE EXIT HANDLER FOR 1062 
        BEGIN 
            /* manage duplicate error for table2 */
        END;

        INSERT INTO table2 ...

    END;
END;
于 2013-05-10T22:35:35.993 回答