Fórum EXportar consulta SQL para arquivo #502010
21/11/2014
0
Estou com um projeto de integração de sistemas, na qual preciso realizar uma consulta sql e exportar estes dados para txt ou xml. Como o firebir não suporta xml sem problemas de utilizar txt.
Consegui realizar a exportação manualmente através da sintaxe a baixo:
output C:\\testeexportacao.txt;
SELECT sd.pront AS PRONTUARIO,
sd.reg AS REGISTRO,
rp.nome AS NOME,
rp.nasc AS NASCIMENTO,
rp.sexo AS SEXO,
sa.exame AS EXAME,
sa.data AS DATA,
sa.hora AS HORA
FROM sicadate AS sd INNER JOIN silanexa AS sa ON sd.id = sa.id_sicadate
LEFT JOIN ricadpac AS rp on sd.pront = rp.pront
WHERE sa.reg = 2394208;
output;
A questão é que preciso fazer de forma automática, ou seja sempre que for inserido dados em um tabela x, seja gerado este arquivo com
título aleatório, ficando sempre um arquivo para cada consulta. Tentei construir uma trigger amarrado nesta tabela mas não obtive sucesso.
Cheguei a ver em alguns forum a respeito do uso de tabela externa, mas ficou mei vago pra mim commo iria tratar para gerar estes arquivos.
Alguém poderia me ajudar por favor.
Desde já agradeço a atenção de todos!!!
Aleandro
Curtir tópico
+ 0Posts
22/11/2014
Ronaldo Lanhellas
Estou com um projeto de integração de sistemas, na qual preciso realizar uma consulta sql e exportar estes dados para txt ou xml. Como o firebir não suporta xml sem problemas de utilizar txt.
Consegui realizar a exportação manualmente através da sintaxe a baixo:
output C:\\testeexportacao.txt;
SELECT sd.pront AS PRONTUARIO,
sd.reg AS REGISTRO,
rp.nome AS NOME,
rp.nasc AS NASCIMENTO,
rp.sexo AS SEXO,
sa.exame AS EXAME,
sa.data AS DATA,
sa.hora AS HORA
FROM sicadate AS sd INNER JOIN silanexa AS sa ON sd.id = sa.id_sicadate
LEFT JOIN ricadpac AS rp on sd.pront = rp.pront
WHERE sa.reg = 2394208;
output;
A questão é que preciso fazer de forma automática, ou seja sempre que for inserido dados em um tabela x, seja gerado este arquivo com
título aleatório, ficando sempre um arquivo para cada consulta. Tentei construir uma trigger amarrado nesta tabela mas não obtive sucesso.
Cheguei a ver em alguns forum a respeito do uso de tabela externa, mas ficou mei vago pra mim commo iria tratar para gerar estes arquivos.
Alguém poderia me ajudar por favor.
Desde já agradeço a atenção de todos!!!
Sem dúvida a solução para isso é o uso de TRIGGER. Por que você não consegiu ? Qual o erro ?
Gostei + 0
22/11/2014
Aleandro
Me deparo com o seguinte erro a baixo:
[img]http://arquivo.devmedia.com.br/forum/imagem/398455-20141122-163931.png[/img]
Sabe dizer o que pode ser ?
Até mais!!
Gostei + 0
23/11/2014
Aleandro
[img]http://arquivo.devmedia.com.br/forum/imagem/398455-20141123-214403.png[/img]
Alguém sabe dizer o que ocorre?
Gostei + 0
23/11/2014
Aleandro
AS
declare variable caminho char(30);
declare variable nome_arquivo char(12);
declare variable extensao char(4);
declare variable ultimo_id integer;
BEGIN
caminho = 'C:\';
nome_arquivo = 'testeexportacao';
extensao = '.txt';
output caminho+arquivo+extensao;
SELECT sd.pront AS PRONTUARIO,
sd.reg AS REGISTRO,
rp.nome AS NOME,
rp.nasc AS NASCIMENTO,
rp.sexo AS SEXO,
sa.exame AS EXAME,
sa.data AS DATA,
sa.hora AS HORA
FROM sicadate AS sd INNER JOIN silanexa AS sa ON sd.id = sa.id_sicadate
LEFT JOIN ricadpac AS rp on sd.pront = rp.pront
WHERE sa.reg = (select reg from silanexa where id = (select max(id) from silanexa));
output;
END
Alguém já fez algo assim ?
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)