Страница 1 из 1

Игнорирование ошибки -803 в процедуре

Добавлено: 14 апр 2005, 12:20
Mitrio
Есть процедура, в которой осуществляется вставка в несколько таблиц:

insert into table1 bla-bla-bla...select from source1 bla-bla-bla;
insert into table2 bla-bla-bla...select from source2 bla-bla-bla;
insert into table3 bla-bla-bla...select from source3 bla-bla-bla;
insert into table4 bla-bla-bla...select from source4 bla-bla-bla;
...
insert into table25 bla-bla-bla...select from source25 bla-bla-bla;

Вопрос в следующем: если при попытке вставить в table1 (или любую другую) возникает ошибка -803 (совпадение уникального индекса) хотелось бы сделать так, чтобы процедура не вываливалась с ошибкой, а продолжала работу и вставляла данные в другие таблицы.

Первое, что мне пришло на ум - ставить перед каждым insert условия if(not exists (select...)) и при его выполнении осуществлять вставку.

Есть ли другие варианты?

Добавлено: 14 апр 2005, 12:27
Merlin