Question

Je veux exporter certaines données SQL Server 2005 au format CSV (comma-separated avec les guillemets).Je ne peux penser à beaucoup de complications de façons de le faire, mais je veux le faire à la droit façon.J'ai regardé bcp, mais je ne peux pas comprendre comment mettre les guillemets autour des champs (à l'exception de la concaténation pour les valeurs de champ, ce qui est laid).Je suppose que je pourrais le faire avec l'utilitaire sqlcmd et -o, mais qui semble laid pour la même raison.

Est-il bcp de chemin à faire?

Est-il raisonnable de sqlcmd façon de le faire?

Est-il une grande, simple utilitaire intégré à la Gestion du Studio que je suis tout donnant sur?

Était-ce utile?

La solution

Dans Management Studio, sélectionnez la base de données, faites un clic droit et sélectionnez Tasks->Export Data. Vous y verrez des options pour exporter vers différents types de formats, y compris CSV, Excel, etc.

Vous pouvez également exécuter votre requête à partir de la fenêtre de requête et enregistrer les résultats au format CSV.

Autres conseils

En studio de gestion, les options de la requête à la sortie de fichier et dans les résultats options-> requête réglage sortie fichier à la sortie en utilisant la virgule comme séparateur.

Si vous ne pouvez pas utiliser Management Studio i utiliser sqlcmd.

sqlcmd -q "select col1,col2,col3 from table" -oc:\myfile.csv -h-1 -s","

C'est le moyen rapide de le faire de la ligne de commande.

Je devais faire une chose que ce que dit Sijin pour obtenir à ajouter des guillemets correctement dans SQL Server Management Studio 2005. Aller à

Tools->Options->Query Results->Sql Server->Results To Grid

Mettre un chèque à côté de cette option:

Quote strings containing list separators when saving .csv results

Note: la méthode ci-dessus ne fonctionnera pas pour SSMS 2005 Express! Pour autant que je sais qu'il n'y a aucun moyen de citer les champs lors de l'exportation des résultats à .csv SSMS 2005 Express.

Oui, il est un utilitaire très simple dans Management Studio, si vous êtes à la recherche d'enregistrer les résultats de la requête dans un fichier CSV.

Faites un clic droit sur le jeu de résultats, la sélection « Enregistrer les résultats sous ». Le type de fichier par défaut est CSV.

Si elle correspond à vos besoins, vous pouvez utiliser bcp sur la ligne de commande si vous le faites souvent ou si vous voulez construire dans un processus de production.

Voilà un lien décrivant la configuration.

Pour les requêtes spécifiques:

Afficher les résultats en mode grille (CTRL+D), exécuter la requête, cliquez sur le haut gauche de la boîte de la main dans les résultats de la grille, coller à l'Excel, enregistrer au format CSV.Vous pouvez être en mesure de le coller directement dans un fichier texte (peut pas essayer maintenant)

Ou "Résultats dans un fichier" a des options trop pour CSV

Ou "les Résultats de texte" avec des virgules comme séparateurs

Tous les paramètres sous l'Outil..et Options de Requête..options (je pense, ne peut pas vérifier) trop

set nocount sur

les citations sont là, utilisez -w2000 pour maintenir chaque ligne sur une ligne.

Dans SQL 2005, est simple: 1. Ouvrez studio de gestion SQL Server et copiez l'instruction SQL dont vous avez besoin dans le TSQL, comme exec sp_whatever 2. Query-> Résultats sur la grille 3. Mettez en surbrillance l'instruction SQL et l'exécuter 4. Mettez en surbrillance les résultats de données (clic gauche sur la zone en haut à gauche de la grille des résultats) 5. Maintenant faites un clic droit et sélectionnez Enregistrer sous Résultats 6. Sélectionnez CSV dans le Enregistrer sous, entrez un nom de fichier, sélectionnez un emplacement et cliquez sur Enregistrer.

Facile!

Dans Sql Server 2012 - Management Studio:

Solution 1:

Exécuter la requête

clic droit de la fenêtre Résultats

Sélectionnez Enregistrer les résultats sous dans le menu

Sélectionnez CSV

Solution 2:

Faites un clic droit sur la base de données

Sélectionnez Tâches, Exporter les données

Sélectionner la source DB

Sélectionnez la destination: Flat File

Choisissez un nom de fichier

Sélectionnez Format - Délimité

Choisissez une table ou écrire une requête

Choisissez un séparateur de colonne

Remarque: Vous pouvez choisir un identificateur de texte qui délimitent vos champs de texte, tels que les guillemets.

Si vous avez un champ avec des virgules, ne pas utiliser que vous utilisez la virgule comme séparateur, car il n'échappe pas des virgules. Vous pouvez choisir un séparateur de colonne, comme barre verticale: | au lieu de virgule ou un caractère de tabulation. Dans le cas contraire, écrire une requête qui échappe à vos virgules ou votre champ délimite varchar.

Le caractère d'échappement ou de qualification de texte que vous devez utiliser dépend de vos besoins.

Je pense que la façon la plus simple de le faire est d'Excel.

  1. Ouvrez un nouveau fichier Excel.
  2. Cliquez sur l'onglet Données
  3. Sélectionnez Autres sources de données
  4. Sélectionnez SQL Server
  5. Entrez votre nom de serveur, base de données, nom de la table, etc.

Si vous avez une version plus récente d'Excel pourrait apporter les données de PowerPivot puis insérez ces données dans une table.

SSIS est une très bonne façon de le faire. Cela peut ensuite être planifiée à l'aide SQL Server Agent.

Vous pouvez utiliser le module Node.js ci-dessous pour le faire avec un jeu d'enfant:

https://www.npmjs.com/package/mssql-to-csv

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top