Exportar consulta SQL/ORACLE para TXT

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
Doubleef
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Qua, 17 Nov 2010 4:24 pm
Localização: RECIFE - PE

Boa tarde,
sou novo em Oracle mais já resolvi muitas broncas com a ajuda des Forum. Meu problema é o seguinte, preciso gerar um arquivo TXT CODIGO - NOME - CPF/CNPJ e EMPRESA e dos meus clientes, porém tenho duas empresas no mesmo banco 001 e 002, a exibição da minha consulta apenas com um Select seria assim:

Selecionar tudo

select CE.cliente,
       C.nome,
       C.cgc,
       CE.empresa
from cliente_empresa CE,
       clientes C
 where C.codigo = CE.cliente
order by EMPRESA
e tem mais, meu chefe quer que a listagem venha seguida de virgula ou ponto e virgula.
por EX.

Selecionar tudo

 321 CLIENTE UM LTDA 00031421000100 001, 322 CLIENTE DOIS LTDA 02033245000142 001, ...
peguei a dica de utilizar o SPOOL ARQUIVO.TXT porém saiu um abaixo do outro e os campos CLIENTE - NOME - CGC - EMPRESA de forma desorganizada. E não soube utilizar o UTL_FILE no PL SQL.
Alguém poderia me ajudar. Agradeço.
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Cara o pl faz isso pra ti

Sempre q precisei fzer isso eu montava uma query com RPAD e LPAD pra organiza com os epações que eu queria e separa as colunas por um | e dae exportava.

Mas tu pode fazer a separação por , ou ; como tu quiser.

Executa a tua query e procura o botão Export Query Results, dae ali tu escolhe o tipo de arquivo q tu pretende gerar. e ele gera um arquivo pra ti.
SergioLBJr
Rank: Oracle Guru
Rank: Oracle Guru
Mensagens: 448
Registrado em: Ter, 16 Jun 2009 3:07 pm
Localização: Parobé - RS
Sérgio Luiz Bonemberger Junior
Programador Junior
Parobé RS

[]s

Cara o pl faz isso pra ti

Sempre q precisei fzer isso eu montava uma query com RPAD e LPAD pra organiza com os epações que eu queria e separa as colunas por um | e dae exportava.

Mas tu pode fazer a separação por , ou ; como tu quiser.

Executa a tua query e procura o botão Export Query Results, dae ali tu escolhe o tipo de arquivo q tu pretende gerar. e ele gera um arquivo pra ti.
Doubleef
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Qua, 17 Nov 2010 4:24 pm
Localização: RECIFE - PE

Obrigado pela dica Sergio,
consegui resolver pelo SQL Plus utilizando o Spool e ficou da seguinte forma

Selecionar tudo

set pagesize 50000
spool C:\CLIENTES.TXT
select CE.empresa||';'||C.codigo||';'||C.area||';'||C.cgc||';'||C.cod_municipio_fat||';'||C.pessoa||';'||C.nome||';'||C.data_cad||';'||C.cod_grp_emp||';'||C.cod_municipio_cob||';'||C.observacao||';'||C.fantasia||';'||C.inscricao||';'||C.bairro_cob||';'||C.cod_cob||';'||C.endereco_cob||';'||C.fax_cob||';'||C.fone_cob||';'||C.bairro_fat||';'||C.cod_fat||';'||C.endereco_fat||';'||C.fax_fat||';'||C.fone_fat||';'||C.contribuinte||';'||C.email||';'||C.cod_origem||';'||C.cod_senha_web||';'||C.cod_inscricao_municipal||';'||C.cod_tab_precos||';'||C.ind_usa_cei||';'||C.cod_cei||';'||C.num_inscr_suframa||';'||C.ind_produtor_rural||';'||C.cod_modalidade||';'||C.end_numero_cob||';'||C.end_numero_fat||';'||C.ind_end_agencia||';'||C.cod_banco_debito||';'||C.cod_agencia_debito||';'||C.cod_ccorrente_debito||';'||C.dsc_complemento_fat||';'||C.dsc_complemento_cob||';'||C.dat_val_suframa||';'||C.num_seq_tipodest_nf_eletronica
  from cliente_empresa CE,
       clientes C
 where C.codigo = CE.cliente
 ORDER BY CE.empresa
saiu tudo listado direitinho.

Obrigado mais uma vez.
Responder
  • Informação