IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Export fichier via BCP


Sujet :

Développement SQL Server

  1. #1
    Membre actif
    Avatar de castorcharly
    Homme Profil pro
    Chef de projet
    Inscrit en
    Février 2009
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2009
    Messages : 416
    Points : 299
    Points
    299
    Par défaut Export fichier via BCP
    Bonjour,

    J'utilise bcp pour exporter des données en masse vers un fichier csv et ça marche très bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    bcp "SELECT  ch1,ch2,ch3,ch4 FROM base.dbo.Cible" QUERYOUT C:\\textbcp.csv -c -t ; -T

    Mais j'ai besoin aussi de pouvoir exporter, dans un fichier texte, les champs sous un format de longueur fixe.
    Mais je n'arrive pas à trouver les bons commutateurs, s'ils existent, pour formater les champs en longueur fixe.
    Quelqu'un a t il trouvé ce genre de syntaxe ?

    Merci pour votre aide
    “La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer.” Antoine de Saint-Exupéry.

    D1..D7-2005,2006-Xe2 Ent-XE7 archi-MsSql 2005..2008 & R2, FB 1.5..2.5.x.x -Win10,Win7/64-Xp-
    _____________________________________________________

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    le plus simple est de les caster en CHAR (ascii) ou NCHAR (unicode) et les concaténer, puis de faire un export.
    Ceci peut être fait dans une vue.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CREATE VIEW V
    AS
    SELECT  CAST(ch1 AS CHAR(60)) + CAST(ch2 AS CHAR(25)) + ...  
    FROM base.dbo.Cible

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp "SELECT  * FROM V" QUERYOUT C:\\textbcp.txt -c -t ; -T
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre actif
    Avatar de castorcharly
    Homme Profil pro
    Chef de projet
    Inscrit en
    Février 2009
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2009
    Messages : 416
    Points : 299
    Points
    299
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    le plus simple est de les caster en CHAR (ascii) ou NCHAR (unicode) et les concaténer, puis de faire un export.
    Ceci peut être fait dans une vue.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CREATE VIEW V
    AS
    SELECT  CAST(ch1 AS CHAR(60)) + CAST(ch2 AS CHAR(25)) + ...  
    FROM base.dbo.Cible

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp "SELECT  * FROM V" QUERYOUT C:\\textbcp.txt -c -t ; -T
    A +
    Oui, c'est un peu ce que je suis en train de tenter, en fait je suis partis sur un truc plus direct du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    bcp "SELECT  cast(ch1 as char(20)) + cast(ch2 as char(10)) + cast(ch3 as char(15) + ... FROM base.dbo.Cible" QUERYOUT C:\\textbcp.csv -c -t ' '  -T
    Si ça ne passe pas je tenterai via la vue comme indiqué.

    Merci
    “La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer.” Antoine de Saint-Exupéry.

    D1..D7-2005,2006-Xe2 Ent-XE7 archi-MsSql 2005..2008 & R2, FB 1.5..2.5.x.x -Win10,Win7/64-Xp-
    _____________________________________________________

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 719
    Points
    52 719
    Billets dans le blog
    5
    Par défaut
    Sinon, il faut passer par un fichier de format en txt ou XML, mais là c'est un chouia complexe.....

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre actif
    Avatar de castorcharly
    Homme Profil pro
    Chef de projet
    Inscrit en
    Février 2009
    Messages
    416
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2009
    Messages : 416
    Points : 299
    Points
    299
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Sinon, il faut passer par un fichier de format en txt ou XML, mais là c'est un chouia complexe.....

    A +
    Oui, effectivement j'ai regardé...et j'ai rien compris
    “La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer.” Antoine de Saint-Exupéry.

    D1..D7-2005,2006-Xe2 Ent-XE7 archi-MsSql 2005..2008 & R2, FB 1.5..2.5.x.x -Win10,Win7/64-Xp-
    _____________________________________________________

Discussions similaires

  1. Champs vides dans un export via BCP
    Par Delphi-ne dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 29/07/2009, 09h26
  2. Comment exporter et enregistrer un fichier via IdHttp
    Par DevBel dans le forum Web & réseau
    Réponses: 2
    Dernier message: 21/01/2008, 17h57
  3. envoie de fichiers via les formulaires
    Par fabogranqi dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 10/10/2004, 21h34
  4. exportation : fichiers .dat et .key
    Par Crab dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 13/09/2004, 14h51
  5. [STRUTS][DOWNLOAD] download d'un fichier via une action
    Par FreshVic dans le forum Struts 1
    Réponses: 3
    Dernier message: 16/04/2004, 16h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo