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

Outils SQL Server Discussion :

utilisation de bcp pour exporter les données en fichier texte


Sujet :

Outils SQL Server

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut utilisation de bcp pour exporter les données en fichier texte
    Bonjour,
    je souhaite utiliser l'outil BCP pour automatiser l'export de ma requete sql vers un fichier texte, ma requete est la suivante :

    bcp "SELECT a.JO_Num,a.JM_Date, a.EC_Piece, a.EC_RefPiece,a.CG_NUM,a.CT_Num,a.EC_Intitule,a.EC_Devise,a.EC_Parite,a.TA_Code, a.EC_Reference,b.D_CodeISO FROM Mabase.dbo.F_Ecriturec a INNER JOIN Mabase.dbo.P_Devise b on (a.N_devise = b.cbIndice) WHERE a.ec_lettre = 0" queryout "C:\ecritres.txt" -c -U sa -S localhost -T

    j'ai tenté en changeant les parametres plusieurs fois, ça ne marche pas.
    Les erreurs affichées sont :

    SQLState = 42000, NativeError =229
    Error = [Microsoft][ODBC SQL Server Driver][Sql Server] Autorisation Select refusée sur l'objet 'F_Ecriturec', base de donnée 'Mabase', proprietaire 'dbo'.
    Error = [Microsoft][ODBC SQL Server Driver][Sql Server] Autorisation Select refusée sur l'objet 'P_Devise', base de donnée 'Mabase', proprietaire 'dbo'.

    Merci de m'indiquer Pourquoi j'ai cette erreur, ainsi s'il existe d'autres utilitaires en ligne de commande pour l'export de données en format txt.

    Merci pour votre aide.

  2. #2
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Bonjour,

    Je vois que vous ne mettez pas de mot de passe pour le compte sa .. est ce par simple souci de divulgation ou parce qu'il n'en existe pas ?

    Est ce que le compte sa a les droits de sélection sur ces tables ?
    Si vous tentez la même requête depuis une fenêtre de requête quel est le résultat ?

    ++

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Bonjour,

    Je vois que vous ne mettez pas de mot de passe pour le compte sa .. est ce par simple souci de divulgation ou parce qu'il n'en existe pas ?

    Est ce que le compte sa a les droits de sélection sur ces tables ?
    Si vous tentez la même requête depuis une fenêtre de requête quel est le résultat ?

    ++
    le mot de passe du compte sa n'existe pas
    oui le compte sa a le droit de selection sur les tables. car j'execute la requete sur l'analyseur de requete et ça fonctionne. comme je l'execute aussi sur un autre requeteur et ça fonctionne avec le meme utilisateur sa sans mot de passe.

  4. #4
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Je viens de remarquer ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp "SELECT a.JO_Num,a.JM_Date, a.EC_Piece, a.EC_RefPiece,a.CG_NUM,a.CT_Num,a.EC_Intitule,a.EC_Devise,a.EC_Parite,a.TA_Code, a.EC_Reference,b.D_CodeISO FROM Mabase.dbo.F_Ecriturec a INNER JOIN Mabase.dbo.P_Devise b on (a.N_devise = b.cbIndice) WHERE a.ec_lettre = 0" queryout "C:\ecritres.txt" -c -U sa -S localhost -T
    Vous utilisez l'option -T qui signifie Trusted connexion.. Vous utilisez donc par défaut votre compte de connexion Windows. Supprimez cette option ...

    ++

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Je viens de remarquer ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp "SELECT a.JO_Num,a.JM_Date, a.EC_Piece, a.EC_RefPiece,a.CG_NUM,a.CT_Num,a.EC_Intitule,a.EC_Devise,a.EC_Parite,a.TA_Code, a.EC_Reference,b.D_CodeISO FROM Mabase.dbo.F_Ecriturec a INNER JOIN Mabase.dbo.P_Devise b on (a.N_devise = b.cbIndice) WHERE a.ec_lettre = 0" queryout "C:\ecritres.txt" -c -U sa -S localhost -T
    Vous utilisez l'option -T qui signifie Trusted connexion.. Vous utilisez donc par défaut votre compte de connexion Windows. Supprimez cette option ...

    ++

    ça fonctionne. merci bcp pour votre aide. c'est le -T qui est le probleme. comme vous avez signalé.

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    maintenant le probleme c'est que je veux un fichier avec les delimiteurs(, ou ; ou : ou | etc), mais j'obtient le resultat suivant :

     VENK   jB  71243100ÿÿÿÿ
    FACTURE : MIITERS d ìX ÿÿÿÿ 10287 EUR VENK   jB  34870000 348700151 FACTURE d ìX ÿÿÿÿ 10287 EUR VENK   mB  71243400ÿÿÿÿ FACTURE : 3 XSM @Ï @B  1 10031 EUR


    comment peux-je eliminer tous ces caracteres speciaux inutiles?
    et comment automatiser le format car l'invite de commande me donne la main pour faire entrer le type de mes champs :

    tapez le type de stockage de du champs JO_Num[char]:
    etc

    mon idée c'est automatisé cette requete car je dois recuperer les données extraite d'une façon automatique dans une autre base de données. le requete de recuperation est deja faite. ce qui me reste c'est comment formater le fichier obtenu.

  7. #7
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    le format que je veux c'est(normalement c'est le resultat de la requete) :
    VEN,20100429,41,100027,71243400,etc

  8. #8
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Avez vous essayé avec l'option -C "format" qui permet de spécifier le code page de vos données dans votre fichier.

    ++

  9. #9
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Avez vous essayé avec l'option -C "format" qui permet de spécifier le code page de vos données dans votre fichier.

    ++
    J'ai ajouté -C ascii mais ça donne toujours les memes etapes et le meme resultat.
    ce que je veux c'est ne pas passer par ces etapes ou juste une seule fois afin d'obtenir un fichier bien formaté

  10. #10
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Oups avec l'option -c en minuscule ...

    ++

  11. #11
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Oups avec l'option -c en minuscule ...

    ++
    ça fonctionne tres tres bien avec l'option -c
    Je vous remercie infiniment M. mikedavem

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Code php pour exporter les données mysql sous Excel
    Par le maire dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 24/09/2014, 15h20
  2. Probléme pour exporter les données BD vers word sous format tableau
    Par farfarawi dans le forum Développement Windows
    Réponses: 1
    Dernier message: 21/03/2014, 01h48
  3. Script pour exporter des données dans fichier texte
    Par dionmaxime dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 15/03/2011, 05h18
  4. pour Sauvegarder les données au format texte
    Par medreg dans le forum Bases de données
    Réponses: 2
    Dernier message: 24/01/2011, 18h17
  5. [SAX] Utilisation de LexicalHandler pour gérer les données CDATA en base 64
    Par tdeco dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 23/08/2007, 21h58

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