День добрый!
Помогите, кто может с вопросиком...
Как удалить записи из таблицы с внешним ключем, условия для которой формируются на основе таблицы, чей этот внешний ключ... ((( чет вроде этого..
delete from t_table t
where t.id in (select id from t_table_ext te
where te.summ>1000)
но удалить так естественно не получается, тк в
t_table есть внешний ключ на таблицу
t_table_ext.
Как делаю сейчас:
for i in (select id from t_table_ext te
where te.summ>1000)
loop
delete from t_table_ext te
where te.id=i.id;
commit;
delete from t_table t
where t.id=i.id;
commit;
end loop;
естественно, выполняется ужастно долго...
пробывал делать несколько по другому, через
execute immediate, генерируя запрос с
in.
чет тоже не нравится....
Пробывал делать с
returning... тоже получается удалять только по одной строчке... (((
Подскажите, куда смотреть? как быть? Да как вообще люди делают?