Espero que sim, pessoal estou com uma missao crítica.
passaram um script para rodar no banco, só que esse script está ruim de mais, deixando o banco lento e também a demora de rodar esse script, vi alguns exemplos de bulk collection, gostaria de usar de update, tentei uma vez , mas não conseguir fazer o update, alguém poderia me ajudar nisso!
aqui esta uma parte do script aliás a mais importante que é o update
grato a todos que puderem ajudar!!
DECLARE
BEGIN
FOR reg IN (SELECT a.rowid,
b.nrc,
b.id_status_pc,
b.id_status_conta,
b.id_localidade,
b.terminal,
b.cod_subtp_produto_comercial,
b.dt_ins_prqe,
b.in_stop_faturamento,
b.seg_cnta
FROM fat_20100924_20100824_tmp a,
parque_contratado_20100824 b
WHERE a.flag_atis IS NOT NULL
AND NVL(a.sis_ant,a.sis_atu) = b.sistema
AND a.produto_comercial = b.produto_comercial
AND b.dt_ini_cnta = (SELECT MAX(c.dt_ini_cnta)
FROM parque_contratado_20100824 c
WHERE c.produto_comercial = b.produto_comercial
AND b.sistema = c.sistema))
LOOP
UPDATE fat_20100924_20100824_tmp a
SET a.nrc = reg.nrc,
a.id_status_pc_ant = reg.id_status_pc,
a.id_status_conta_ant = reg.id_status_conta,
a.id_localidade_ant = reg.id_localidade,
a.terminal = reg.terminal,
a.classe_ant = reg.cod_subtp_produto_comercial,
a.cod_subtp_prod_com_ant = reg.cod_subtp_produto_comercial,
a.dt_ins_prqe_ant = reg.dt_ins_prqe,
a.in_stop_fat_ant = reg.in_stop_faturamento,
a.seg_ant = NVL(a.seg_ant,reg.seg_cnta)
WHERE a.rowid = reg.rowid;
END LOOP;
COMMIT;
END;
/