Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

RoyalFlush

[Resolvido] Exportar para txt via query

Recommended Posts

Olá's!

 

Antes de qualquer coisa, boa noite, peço desculpas caso alguém já tenha postado sobre isso, mas após algumas horas de pesquisa não encontrei nada que me atenda adequadamente.

 

 

O cenário é o seguinte:

Possuo uma grande tabela de endereços, contendo rua, numero, bairro, cidade, estado, data de inclusão e ID,

Também possuo uma arvore de diretórios com fotos desses endereços (C:\Enderecos\"ID do endereço") com fotos desses locais.

 

Preciso exportar para um arquivo TXT todos os dados daquele endereço e salvar na mesma pasta das fotos.

 

Já ouvi falar que tem como fazer isso direto do SQL, mas não encontrei referencia alguma de como fazer isso, se alguém poder me dar um exemplo de ao menos como exportar 1 desses arquivos, fico muito grato.

 

[]’s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola

RoyalFlush

 

 

Existem diversos meios para se fazer isso.... mas vamos por partes.... :P

 

Possuo uma grande tabela de endereços, contendo rua, numero, bairro, cidade, estado, data de inclusão e ID,

Também possuo uma arvore de diretórios com fotos desses endereços (C:\Enderecos\"ID do endereço") com fotos desses locais.

 

Entao vamos a uma estrutura de tabela temporaria:

 

declare @dados table (nome varchar(max) , rua varchar(max), numero bigint, bairro varchar(max), cidade varchar(MAX), estado varchar(2), data_inclusao datetime default getdate(), id bigint identity (1,1))insert into @dados (nome, rua, numero, bairro, cidade, estado) values ('junior','rua a', 1, 'centro', 'Sao Paulo', 'SP')insert into @dados (nome, rua, numero, bairro, cidade, estado) values ('RoyalFlush','rua b', 2, 'bairro sei la eu', 'Sao Paulo', 'SP')select * from @dados 

 

Preciso exportar para um arquivo TXT todos os dados daquele endereço e salvar na mesma pasta das fotos

 

Agora vem a questao: Pode ser feito por BCP:

Vamos aproveitar a estrutura da tabela @dados:

 

-- exporto dados para uma pasta qqexec xp_cmdshell 'BCP usstrategy..@dados OUT c:\teste.TXT -c -t[;] -r{#}\n -CP850 -T -Slocalhost'

 

Note que eu exportei para a unidade c:\... o que você vai precisar fazer é ler o diretório para executar este BCP....

 

PS.

Achei este link que fiz a um tempo atras:

http://forum.imasters.com.br/index.php?/topic/395829-exportando-e-importando-dados-para-txt/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá A.jr,

 

Muito obrigado pela ajuda, ficou apenas uma duvida.

Neste seu exemplo é exportada toda a tabela @dados, como faço para exportar apenas um registro dela?

Por exemplo o resultado da query

 

SELECT * FROM @dados WHERE ID = 1

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

No BCP.... você muda para isso:

 

 

 

exec xp_cmdshell 'BCP "select * from @dados where id = 1 " queryout c:\teste.TXT -c -t[;] -r{#}\n -CP850 -T -Slocalhost'

 

 

Somente cuidado com a diferença entre as letras maiusculas e minusculas do comando do BCP

 

Mais detalhes deste comando:

http://msdn.microsoft.com/en-us/library/ms162802.aspx

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.