Делать проверку на наличии такой строки перед вставкой? Да и зачем вообще excpetion
? Просто пропускайте строку, и все, если такая уже есть в целевой таблице.
Обновление
Как нибудь так:
IF EXISTS (SELECT * FROM table WHERE ...) THEN CONTINUE;
Не знаком с oracle
, но, думаю, принцип понятен
А зачем вообще вам цикл? Почему не сделать пакетно?
INSERT INTO
destination_table
(...)
SELECT
...
FROM
source_table
Обновление 2
@Sergey4590, а, простите, зачем? Если destination_table == source_table
, то там и так все записи есть. т.е. все записи попадут, так сказать, в Ваш exception
. Или я не совсем понимаю, чего Вы хотите добиться. Попробуйте переформулировать вопрос.
Обновление 3
@Sergey4590, либо воспользуйтесь вариантом с EXISTS
, либо погуглите на тему oracle exception