Gravar informações em um arquivo já existente

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
cloudspace
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Sáb, 26 Out 2013 2:33 pm

Galera,

Bom dia veja se alguém ai pode me ajudar.

Estou montando um processo de gravação de arquivos onde preciso gerar um arquivo com cabeçalho no formato UTF8 que é diferente do setado no banco atual com uma query.
Gostaria de algum exemplo onde posso abrir um arquivo gravar x linhas obtidas por uma query, fechar o arquivo, abrir de novo e gravar mais registro a a partir da ultima linha com uma nov query.
Achei a function fseek do utl_file para localizar a ultima posição, mas não consigo botar pra funcionar, se alguém ai puder uma força agradeço :)

P.s: está fogo trabalhar até tarde e fins de semana mas to aprendendo bastante.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Olá cloudspace,


Bem vindo ao forum GLUFKE !

Então, sobre suas dúvida, a rotina de UTL_FILE dispõe do método FOPEN para a abertura de arquivos.

Entre os parâmetros deste método, se destaca um com o nome "OPEN_MODE". Ele permite que o arquivo seja aberto nos modos:

W - (WRITE) Gravacao
R - (READ) Leitura
A - (APPEND) Incremental

Com base na sua dúvida, acredito que você deva abrir seu arquivo texto no modo "A". Se o arquivo ainda não existir, o UTL_FILE cria um arquivo novo. Se ele já existir, o texto que você pretende gravar no arquivo será adicionado AO FINAL DO ARQUIVO.

Maiores informações sobre a package UTL_FILE podem ser obtidas neste link:

http://docs.oracle.com/cd/E11882_01/app ... u_file.htm

Espero ter contribuido para sanar a sua dúvida,

Sergio Coutinho
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 14 visitantes