Gerar Arquivo texto
Pessoal tenho o select abaixo e preciso que o resultado seja gerado no arquivo texto
select acad_boletos.nossonumero,
acad_boletos.data_emissao,
acad_boletos.data_vcto,
acad_boletos.valor,
acad_boletos.desconto,
acad_boletos.valor_pago,
acad_boletos.data_pgto,
AAC_USUARIOS.nome_completo Quem_emitiu -- Apreenta que emitiu o BOLETO
INTO OUTFILE ´/tmp/result.txt´
FIELDS TERMINATED BY ´,´ OPTIONALLY ENCLOSED BY ´´´
LINES TERMINATED BY ´\n´
from acad_boletos, AAC_USUARIOS
where acad_boletos.ref_usuario = AAC_USUARIOS.CODIGO_USUARIO
and acad_boletos.ref_usuario is not null
and acad_boletos.NOSSONUMERO IN (´9999´,´9999´,´9999´) ---DEVE SER DIGITADO O NR. DO DOCUMENTO
Obrigado
select acad_boletos.nossonumero,
acad_boletos.data_emissao,
acad_boletos.data_vcto,
acad_boletos.valor,
acad_boletos.desconto,
acad_boletos.valor_pago,
acad_boletos.data_pgto,
AAC_USUARIOS.nome_completo Quem_emitiu -- Apreenta que emitiu o BOLETO
INTO OUTFILE ´/tmp/result.txt´
FIELDS TERMINATED BY ´,´ OPTIONALLY ENCLOSED BY ´´´
LINES TERMINATED BY ´\n´
from acad_boletos, AAC_USUARIOS
where acad_boletos.ref_usuario = AAC_USUARIOS.CODIGO_USUARIO
and acad_boletos.ref_usuario is not null
and acad_boletos.NOSSONUMERO IN (´9999´,´9999´,´9999´) ---DEVE SER DIGITADO O NR. DO DOCUMENTO
Obrigado
Nil.prado
Curtidas 0
Respostas
Carlos Mazzi
19/08/2009
Vc pode conseguir isso direto atraves do IbExpert.
GOSTEI 0
Edinei Colli
19/08/2009
Utilize a opção External File (Configurável no firebird.conf ExteralFileAccess = Full)
Com essa opção você poderá criar um arquivo e este será gerenciado pelo firebird como uma tabela.
Exemplo
/* Exemplo de arquivo Blocado */create table exemplo1_ext external file 'c:\exemplo1.txt' ( codigo char( 3) ,nome char(50) ,eof char(2));
insert into exemplo1_ext ( codigo ,nome , eol) values( '001' ,'JOAO DA SILVA' ,ascci_char(10) || ascci_char(13));
/* Exemplo de arquivo com separador */create table exemplo2_ext external file 'c:\exemplo2.txt' ( codigo integer( 3) ,sp1 char(1) ,nome varchar(50) ,sp2 char(1) ,idade integer(2) ,eof char(2));
insert into exemplo1_ext ( codigo ,sp1 ,nome ,sp2 ,idade ,eol) values( 1 ,'|' ,'JOAO DA SILVA' ,'|' ,23 ,ascci_char(10) || ascci_char(13))
Observação:
Ao remover a tabela externa (DROP TABLE ) o arquivo em disco não é excluído.
Espero ter ajudado.
Com essa opção você poderá criar um arquivo e este será gerenciado pelo firebird como uma tabela.
Exemplo
/* Exemplo de arquivo Blocado */create table exemplo1_ext external file 'c:\exemplo1.txt' ( codigo char( 3) ,nome char(50) ,eof char(2));
insert into exemplo1_ext ( codigo ,nome , eol) values( '001' ,'JOAO DA SILVA' ,ascci_char(10) || ascci_char(13));
/* Exemplo de arquivo com separador */create table exemplo2_ext external file 'c:\exemplo2.txt' ( codigo integer( 3) ,sp1 char(1) ,nome varchar(50) ,sp2 char(1) ,idade integer(2) ,eof char(2));
insert into exemplo1_ext ( codigo ,sp1 ,nome ,sp2 ,idade ,eol) values( 1 ,'|' ,'JOAO DA SILVA' ,'|' ,23 ,ascci_char(10) || ascci_char(13))
Observação:
Ao remover a tabela externa (DROP TABLE ) o arquivo em disco não é excluído.
Espero ter ajudado.
GOSTEI 0
Powerlog Tecnologia
19/08/2009
Aqui deu erro "Function Unknow Ascii_Char". Como fazer o CRLF ?
GOSTEI 0
Edinei Colli
19/08/2009
Verifique dentro da pasta UDF de seu Firebird, deve conter um arquivo ib_udf.sql, este arquivo contem diversas funções úteis, uma delas é ascii_char.
DECLARE EXTERNAL FUNCTION ascii_char
INTEGER
RETURNS CSTRING(1) FREE_IT
ENTRY_POINT IB_UDF_ascii_char MODULE_NAME ib_udf; */
Importe as funções do arquivo e teste novamente.
DECLARE EXTERNAL FUNCTION ascii_char
INTEGER
RETURNS CSTRING(1) FREE_IT
ENTRY_POINT IB_UDF_ascii_char MODULE_NAME ib_udf; */
Importe as funções do arquivo e teste novamente.
GOSTEI 0