Usuário com melhor resposta
Salvar Resultado em arquivo

Pergunta
-
Boa tarde,
Gostaria de uma ajuda sobre um problema simples.
Eu necessito fazer uma consulta via sql management studio e que o resultado, ao invés de em tela, seja salvo em um arquivo.
O arquivo a ser salvo ficará assim: c:\resultado.csv
O script é: select * from funcionarios
Eu gostaria de saber como executar via linha de comando no sql management studio.
seria algo como:
select
*
INTO c:\resultado.csv
from funcionarios
Desde já agradeço a ajuda dos amigos.
Respostas
-
DECLARE @COMANDO NVARCHAR(4000) = ''
SET @COMANDO = 'sqlcmd -S . -d [NOME DO SEU BANCO DE DADOS] -E -s[SEU SEPARADOR DE CAMPO] -W -Q "SUA QUERY" > c:\TEMP\resultado.tmp'
EXEC master..xp_cmdshell @COMANDO
SET @COMANDO = 'type C:\TEMP\resultado.tmp | findstr /V \---\;\--- | C:\TEMP\replace-null.exe > c:\TEMP\resultado_OK.tmp'
SET @COMANDO = 'EXEC xp_cmdshell'''+ @COMANDO +''''
SET @COMANDO = 'copy C:\TEMP\resultado.tmp C:\resultado.csv'
EXEC master..xp_cmdshell @COMANDO
SET @COMANDO = 'del C:\TEMP\resultado*.tmp'
EXEC master..xp_cmdshell @COMANDO
VOCÊ PODE CARREGAR O replace-null.exe em: replace-null.exe- Editado SupremeFoxPC terça-feira, 12 de julho de 2016 20:17
- Marcado como Resposta Robson William Silva quarta-feira, 13 de julho de 2016 13:50
-
Bom dia Daniel Iniciante SQL,
Espero poder ajuda-lo de alguma forma.
Por gentileza, tente adaptar o seguinte exemplo:
SELECT * FROM funcionários; OUTPUT TO 'c:\resultado.csv' FORMAT TEXT QUOTE '"' WITH COLUMN NAMES;
Atenciosamente,Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Sugerido como Resposta Robson William Silva quarta-feira, 20 de julho de 2016 14:34
- Marcado como Resposta Robson William Silva sexta-feira, 22 de julho de 2016 13:11
Todas as Respostas
-
-
-
DECLARE @COMANDO NVARCHAR(4000) = ''
SET @COMANDO = 'sqlcmd -S . -d [NOME DO SEU BANCO DE DADOS] -E -s[SEU SEPARADOR DE CAMPO] -W -Q "SUA QUERY" > c:\TEMP\resultado.tmp'
EXEC master..xp_cmdshell @COMANDO
SET @COMANDO = 'type C:\TEMP\resultado.tmp | findstr /V \---\;\--- | C:\TEMP\replace-null.exe > c:\TEMP\resultado_OK.tmp'
SET @COMANDO = 'EXEC xp_cmdshell'''+ @COMANDO +''''
SET @COMANDO = 'copy C:\TEMP\resultado.tmp C:\resultado.csv'
EXEC master..xp_cmdshell @COMANDO
SET @COMANDO = 'del C:\TEMP\resultado*.tmp'
EXEC master..xp_cmdshell @COMANDO
VOCÊ PODE CARREGAR O replace-null.exe em: replace-null.exe- Editado SupremeFoxPC terça-feira, 12 de julho de 2016 20:17
- Marcado como Resposta Robson William Silva quarta-feira, 13 de julho de 2016 13:50
-
Boa tarde!
Utilizei esta opção e quase está com eu preciso.
O que falta é que o resultado teria que ser separado por ; (ponto e virgula) ou algum outro separador e sem o cabeçalho. Com esta opção esta exportando, mas está saindo sem formatação.
Mais uma vez agradeço a atenção.
Attm
-
Bom dia Daniel Iniciante SQL,
Espero poder ajuda-lo de alguma forma.
Por gentileza, tente adaptar o seguinte exemplo:
SELECT * FROM funcionários; OUTPUT TO 'c:\resultado.csv' FORMAT TEXT QUOTE '"' WITH COLUMN NAMES;
Atenciosamente,Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Sugerido como Resposta Robson William Silva quarta-feira, 20 de julho de 2016 14:34
- Marcado como Resposta Robson William Silva sexta-feira, 22 de julho de 2016 13:11
-
Bom dia,
Devido a falta de resposta do usuário
essa thread está sendo fechada.
Se o problema ainda estiver ocorrendo,
favor abrir uma nova thread.
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.