我有一个有多个插入的sql,但是当我运行时,它为第一个插入提供了唯一约束....并且sql正在跳过其他插入。可以帮助我解决此方案的异常处理。
答案 0 :(得分:1)
您需要将插入语句包装在带有异常处理程序的BEGIN / END块中,以捕获DUP_VAL_ON_INDEX
异常。在那里,你可以做任何你需要做的事情,或者只是忽略错误。
BEGIN
-- first insert
BEGIN
Insert into myTab(ID,NAME) values (1,'name1');
EXCEPTION
when DUP_VAL_ON_INDEX then
null; -- do something or ignore the error
END;
-- second insert
BEGIN
Insert into myTab(ID,NAME) values (2,'name2');
EXCEPTION
when DUP_VAL_ON_INDEX then
null; -- do something or ignore the error
END;
END;