Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Exporter le tableau de la base de données vers un fichier csv

Quelques idées :

Depuis 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

Utilisation de SQLCMD (Invite de commandes)

Exemple :

Depuis l'invite de commande, vous pouvez exécuter la requête et l'exporter vers un fichier :

sqlcmd -S . -d DatabaseName -E -s, -W -Q "SELECT * FROM TableName" > C:\Test.csv

Ne mettez pas de guillemets entre guillemets, utilisez uniquement -s, et non les guillemets -s',' sauf si vous souhaitez définir des guillemets comme séparateurs.

Plus d'informations ici :ExcelSQLServer

Remarques :

  • Cette approche aura les informations "Lignes affectées" au bas du fichier, mais vous pouvez vous en débarrasser en utilisant le "SET NOCOUNT ON" dans la requête elle-même.

  • Vous pouvez exécuter une procédure stockée au lieu de la requête réelle (par exemple "EXEC Database.dbo.StoredProcedure")

  • Vous pouvez utiliser n'importe quel langage de programmation ou même un fichier batch pour automatiser cela

Utiliser BCP (invite de commande)

Exemple :

bcp "SELECT * FROM Database.dbo.Table" queryout C:\Test.csv -c -t',' -T -S .\SQLEXPRESS

Il est important de citer le séparateur virgule comme -t',' vs juste -t,

Plus d'informations ici :Utilitaire bcp

Remarques :

  • Comme lors de l'utilisation de SQLCMD, vous pouvez exécuter des procédures stockées au lieu des requêtes réelles
  • Vous pouvez utiliser n'importe quel langage de programmation ou un fichier batch pour automatiser cela

J'espère que cela vous aidera.