iceman
говнокодер
переполнение сегмента отката
обновляю КЛАДР - 1017718 записей...
данный код выполняется больше часа, при этом переполняется сегмент отката.
Подскажите как модифицировать код, чтобы COMMIT'ить данные например каждые 1000 итераций...
Могу только циклом по курсору, но проверить нужно обновить или добавить запись могу только еще одним селектом, а это накладно, обновляться будет еще дольше...
обновляю КЛАДР - 1017718 записей...
PHP:
merge into KLADR k
using (
select
substr(x.code, 1, 15) code,
substr(x.code, 1, 11) parent_id,
substr(x.code, 16, 2) actual_flag,
t.type_id, x."INDEX" zip, x.ocatd, x.name
from KLADR_STREET x
inner join KLADR_DISTRICT_TYPE t on x.socr = t.abbreviation and t.type_level = 5
where substr(x.code, 16, 2) in ('00', '51', '99')
) n on (k.kladr_id = n.code)
when not matched then
insert (kladr_id, parent_id, actual_flag, district_type, district_level, zip, okato, district_name)
values (n.code, n.parent_id, n.actual_flag, n.type_id, 5, n.zip, n.ocatd, n.name);
commit;
Подскажите как модифицировать код, чтобы COMMIT'ить данные например каждые 1000 итераций...
Могу только циклом по курсору, но проверить нужно обновить или добавить запись могу только еще одним селектом, а это накладно, обновляться будет еще дольше...