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

MS SQL Server Discussion :

[sql2k] résultat de for xml explicit dans un fichier


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut [sql2k] résultat de for xml explicit dans un fichier
    Bonjour,

    J'arrive à générer sous un format XML de mon choix une requête sql grâce à l'utilisation de la commande FOR XML EXPLICIT. Mais malgré toutes mes recherches sur le net je n'arrive pas à trouver comment je peux maintenant récupérer le résultat de cette requête (la chaîne XML donc que je vois à l'écran) et l'écrire dans un fichier de manière à pouvoir échanger mes données au format XML. Tout ceci en n'utilisant que le T-sql.

    Merci pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Quelque chose comme ça avec sqlcmd:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sqlcmd -S mon_serveur -U mon_user -P mon_password -i ma_query.sql -o resultat.xml

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    la commande sqlcmd ne fonctionne pas. J'ai le message suivant :

    HResult 0x15, niveau 16, état 1
    Cryptage non pris en charge sur le client.
    Sqlcmd*: erreur*: Microsoft SQL Native Client*: Le client n'a pas pu établir la connexion.
    Sqlcmd*: erreur*: Microsoft SQL Native Client*: Une erreur s'est produite lors de l'établissement d'une connexion au serveur. Lors de la connexion à SQL Server 2005, cet échec peut être dû au fait que les paramètres par défaut de SQL Server n'autorisent p
    as les connexions à distance..
    NULL

    Suivant la même idée, j'ai donc utilisé la commande osql de sql2000. J'arrive cette fois-ci à inscrire le résultat de la commande dans une fichier texte mais la mise en page est exécrable : ma chaîne xml est coupée par de nombreux blocs d'espace et il y a de nombreux passages à la ligne.

  4. #4
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 35
    Points : 45
    Points
    45
    Par défaut
    Pour ma part à partir de cette commande
    sqlcmd -S SRV-SQL1 i requeteForExport.sql -o resultat.xml
    j'arrive à optenir un fichier dont le contenu est :
    XML_F52E2B61-18A1-11d1-B105-00805F49916B
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    0x440578006D006C006E007300440F4900640043006C00690065006E0074004600690063006800690065007200440949006400430065006E007400720061006C00440843006900760069006C0069007400650044034E006F006D0044065000720065006E006F006D00440541006400640072003100440541006400640072003200

    Si quelqu'un sait comment faire pour avoir le bon format...

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut
    cette requête fonctionne.

    sqlcmd -E -S PLUTON -d TEST -Q "select data from people" -o resultat2.xml

  6. #6
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 35
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par ylarvor Voir le message
    cette requête fonctionne.
    Effectivement cette requette fonctionne ... pour un select quelqueconque.
    Cependant ici, je voudrais créer un fichier XML contenant le flux XML résultant du FOR XML EXPLICIT.
    Si quelqu'un à une idée, je suis preneur...

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut
    Pour votre information, DATA est un champs XML.

  8. #8
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 35
    Points : 45
    Points
    45
    Par défaut
    Citation Envoyé par ylarvor Voir le message
    Pour votre information, DATA est un champs XML.
    Oui mais ne résulte pas d'un For Xml explicit
    que je n'arrive même pas à mettre dans une variable... (à la différence de For XML AUTO)


    Si quelqu'un a déjà fait ça...

  9. #9
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Ne vous faudrait-il pas enregistrer le resultat de votre SELECT dans une colonne de type XML, puis d'utiliser la requête avec le commutateur -Q de ylarvor pour exporter votre résultat ?

    Voyez également la commande :XML de l'utilitaire SQLCMD, et éventuellement le commutateur -x de l'utilitaire BCP...

    Donnez-nous un jeu de données avec votre requête, nous vous aiderons encore mieux !

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 15
    Points : 7
    Points
    7
    Par défaut
    Bonjour à tous,

    Ayant eu un problème de santé, je n'étais plus venu consulter le site pour voir vos réponse. J'ai finalement trouvé l'astuce suivante si ça peut aider quelqu'un : étant sous windows, j'ai configuré le server iis en utilisant Démarrer - sql server 2000 - Configurer la prise en charge de sql XML dans iis. J'ai défini une directory virtuelle associée à mon serveur et idiqué la base de données (j'ai suivi l'aide pour faire cela c'est assez simple à réaliser). J'ai ensuite placé ma requête XML FOR dans une procédure stockée puis j'ai lancé ma procédure stockée dans l'adresse internet passée à internet explorer et le résultat de la requête apparaît dans internet explorer !!! j'ai été complètement bluffé en voyant cela. Ensuite je peux faire enregistrer sous et je sauve ainsi le résultat de ma requête dans un fchier !!! que je peux relire par un éditeur xml.

Discussions similaires

  1. [MySQL] résultat de la requête SQL dans un Fichier XML
    Par Invité dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 05/07/2013, 19h26
  2. Récupérer le résultat d'une requete sql dans un fichier xml
    Par mackla dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 19/07/2012, 10h46
  3. SQL Server 2000 : FOR XML EXPLICIT & BCP
    Par Laotzu dans le forum Outils
    Réponses: 0
    Dernier message: 19/05/2011, 19h56
  4. Requete FOR XML EXPLICIT - Balise fermante en trop
    Par Gipipi dans le forum Développement
    Réponses: 6
    Dernier message: 28/07/2010, 17h00
  5. Réponses: 2
    Dernier message: 08/12/2006, 15h29

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