Ir para o conteúdo
ferreira12

criar um arquivo de .txt

Mensagens Recomendadas

ferreira12

Olá,

quero copiar o conteúdo que se encontra numa tabela para um ficheiro .txt

para isso estou a usar o seguinte código:

EXEC MASTER.DBO.XP_CMDSHELL
'bcp "SELECT * FROM [testes].[dbo].[Analise]" queryout C:\teste.txt -S xxx\SQLEXPRESS -U sa -P 1234 -t , -r \n -w'

Agora queria que ele me criasse automaticamente o nome e a pasta e que coloca-se num destino C:\ por exemplo.

é possível fazer isto através do sql server?

Editado por ferreira12

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

Mete a solução na tua resposta. Podes assim ajudar outro utilizador com o mesmo problema (ou, talvez, outro problema parecido).


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ferreira12

Tens toda a razão, aqui fica a solução

Declare
@str_comando varchar(500),
@str_NomeArquivo varchar(100)

Select @str_NomeArquivo = 'C:\Nome_' + Replace(Convert(varchar,Getdate(),103),'/','') + SubString(Replace(Convert(varchar,Getdate(),108),':',''),1,4) + '.TXT';
Set @str_comando = 'bcp "SELECT * FROM tabela" queryout ' + @str_NomeArquivo + ' -S xxx\SQLEXPRESS -U sa -P 1234 -t , -r \n -w';
Exec xp_cmdshell @str_comando
End

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ferreira12

O passo seguinte era criar trigger, com o código acima, acrescentei apenas o codigo abaixo.

CREATE
Trigger [dbo].[TR_Exporta_Arquivo] On [dbo].[teste] FOR INSERT,UPDATE as

Criei o dito cujo,

O meu programa que anteriormente fazia o update/insert normal, agora dá erro de timeout ou servidor não está a corresponder.

Vou mais para a opção que o servidor não está a corresponder, porque quando tento realizar um select a tabela em questão ele não devolve a informação, fica sempre a tentar, mas não consegue devolver.

O que poderei estar a fazer de mal, existem alternativas ao trigger, eu nunca usei esta é a minha primeira experiencia com os triggers, aconselha-me? sim? não?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.