Algumas ideias:
Do SQL Server Management Studio
1. Run a SELECT statement to filter your data
2. Click on the top-left corner to select all rows
3. Right-click to copy all the selected
4. Paste the copied content on Microsoft Excel
5. Save as CSV
Usando SQLCMD (prompt de comando)
Exemplo:
No prompt de comando, você pode executar a consulta e exportá-la para um arquivo:
sqlcmd -S . -d DatabaseName -E -s, -W -Q "SELECT * FROM TableName" > C:\Test.csv
Não use o separador de aspas apenas -s, e não aspas -s',' a menos que você queira definir aspas como separador.
Mais informações aqui:ExcelSQLServer
Notas:
-
Essa abordagem terá as informações de "Linhas afetadas" na parte inferior do arquivo, mas você pode se livrar disso usando o "SET NOCOUNT ON" na própria consulta.
-
Você pode executar um procedimento armazenado em vez da consulta real (por exemplo, "EXEC Database.dbo.StoredProcedure")
- Você pode usar qualquer linguagem de programação ou até mesmo um arquivo em lote para automatizar isso
Usando BCP (Prompt de Comando)
Exemplo:
bcp "SELECT * FROM Database.dbo.Table" queryout C:\Test.csv -c -t',' -T -S .\SQLEXPRESS
É importante citar o separador de vírgulas como -t',' vs apenas -t,
Mais informações aqui:Utilitário bcp
Notas:
- De acordo com o SQLCMD, você pode executar procedimentos armazenados em vez das consultas reais
- Você pode usar qualquer linguagem de programação ou um arquivo em lote para automatizar isso
Espero que isto ajude.