Jump to content

Search the Community

Showing results for tags 'cursores'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 1 result

  1. Estou com o seguinte problema fiz alguns cursores para exportar algumas informações para texto, porém está demorando mais de 2 horas para exportar 4 mil linhas, o problema aconteceu depois de ter incluído os registros de nível 3 e 4 algumas dessas tabelas estão sem informação não sei se seria esse o problema, todas as minhas tabelas estão indexadas. Gostaria de saber se alguém pode me ajudar a otimizar esse tempo ou me informar qual seria a melhor maneira de fazer isso, sem o nível 3 e 4 levava 5 min para gerar o mesmo resultado, agora leva mais de 2hs. Abaixo Segue o Cursor. Obrigado! --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- SET SERVEROUTPUT ON; DECLARE MEU_ARQUIVO UTL_FILE.FILE_TYPE; CURSOR CR_0000 IS SELECT * FROM TBL_EFD_ICMS_0000; CURSOR CR_C100 IS SELECT * FROM TBL_EFD_ICMS_C100; CURSOR CR_C110 IS SELECT * FROM TBL_EFD_ICMS_C110; CURSOR CR_C111 IS SELECT * FROM TBL_EFD_ICMS_C111; REG_0000 CR_0000%ROWTYPE; REG_C100 CR_C100%ROWTYPE; REG_C110 CR_C110%ROWTYPE; REG_C111 CR_C111%ROWTYPE; --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- BEGIN MEU_ARQUIVO := UTL_FILE.FOPEN('DIRETORIO', 'SAIDAS_NEW.txt', 'w'); OPEN CR_0000; -- nivel 1 LOOP FETCH CR_0000 INTO REG_0000; EXIT WHEN CR_0000%NOTFOUND; UTL_FILE.PUT_LINE(MEU_ARQUIVO,'|'||REG_0000.REG ||'|'||REG_0000.COD_VER ||'|'||REG_0000.DT_INI ||'|'||REG_0000.DT_FIN ||'|'||REG_0000.CNPJ ||'|'||REG_0000.IND_ATIV ||'|'); OPEN CR_C100; -- nivel 2 LOOP FETCH CR_C100 INTO REG_C100; EXIT WHEN CR_C100%NOTFOUND; IF REG_C100.ID_0000 = REG_0000.ID_0000 THEN UTL_FILE.PUT_LINE(MEU_ARQUIVO,'|'||REG_C100.REG ||'|'||REG_C100.SER ||'|'||REG_C100.NUM_DOC ||'|'||REG_C100.CHV_NFE ||'|'||REG_C100.DT_DOC ||'|'||REG_C100.DT_E_S ||'|'||REG_C100.VL_DOC ||'|'||REG_C100.VL_COFINS_ST ||'|'); END IF; OPEN CR_C110; -- nivel 3 LOOP FETCH CR_C110 INTO REG_C110; EXIT WHEN CR_C110%NOTFOUND; IF REG_C110.ID_0000 = REG_0000.ID_0000 AND REG_C110.ID_C100 = REG_C100.ID_C100 THEN UTL_FILE.PUT_LINE(MEU_ARQUIVO,'|'||REG_C110.REG ||'|'||REG_C110.COD_INF ||'|'||REG_C110.TXT_COMPL ||'|'); END IF; OPEN CR_C111; -- nivel 4 LOOP FETCH CR_C111 INTO REG_C111; EXIT WHEN CR_C111%NOTFOUND; IF REG_C111.ID_0000 = REG_0000.ID_0000 AND REG_C111.ID_C100 = REG_C100.ID_C100 AND REG_C111.ID_C110 = REG_C110.ID_C110 THEN UTL_FILE.PUT_LINE(MEU_ARQUIVO,'|'||REG_C111.REG ||'|'||REG_C111.COD_INF ||'|'||REG_C111.TXT_COMPL ||'|'); END IF; END LOOP; CLOSE CR_C111; END LOOP; CLOSE CR_C110; END LOOP; CLOSE CR_C100; END LOOP; CLOSE CR_0000; DBMS_OUTPUT.PUT_LINE('Arquivo gerado com sucesso.'); --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Exception WHEN UTL_FILE.INVALID_OPERATION THEN Dbms_Output.Put_Line('Operação inválida no arquivo.'); UTL_FILE.FCLOSE(MEU_ARQUIVO); WHEN UTL_FILE.WRITE_ERROR THEN Dbms_Output.Put_Line('Erro de gravação no arquivo.'); UTL_FILE.FCLOSE(MEU_ARQUIVO); WHEN UTL_FILE.INVALID_PATH THEN Dbms_Output.Put_Line('Diretório inválido.'); UTL_FILE.FCLOSE(MEU_ARQUIVO); WHEN Others THEN Dbms_Output.Put_Line('Problemas na gravação do arquivo.'); UTL_FILE.FCLOSE(MEU_ARQUIVO); END; /
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.