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 :

Xquery - Sortir les élements d'une balise XML


Sujet :

Développement SQL Server

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut Xquery - Sortir les élements d'une balise XML
    Bonjour,

    J'ai plusieurs fichiers XML qui contiennent des informations telles que

    Fichier 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
      <Controle Id="xxxxx" EmployeNum="1111111">
               <PVDateHeure>2009-01-01T00:00:34.46</PVDateHeure>
               <.....>
      </Controle>
    Fichier 2:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <Controle Id="yyyy" EmployeNum="222222">
                 <PVDateHeure>20089-01-01T00:00:34.46</PVDateHeure>
                 <.....>
       </Controle>
    dans le résultat je veux avoir une liste des EmployeNum et des DateHeure.

    Merci beaucoup 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
    Bonsoir,

    Quelle version de SQL Server ?

    Si votre fichier respecte cette nomenclature, vous pouvez intégrer le contenu de votre fichier dans une colonne XML et extraire les informations de cette manière (A partir de SQL Server 2005):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    DECLARE @doc TABLE
    (
      xmlCol XML NOT NULL
    )
    INSERT INTO @doc VALUES ('<Controle Id="yyyy" EmployeNum="222222">
                                <PVDateHeure>2009-01-01T00:00:34.46</PVDateHeure>
                              </Controle>');
     
    SELECT 
    	xmlCol.value('(/Controle/@EmployeNum)[1]', 'INT') AS EmployeNum,
    	xmlCol.value('(/Controle/PVDateHeure)[1]', 'DATETIME') AS PVDateHeure
    FROM @doc;
    ++

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    Bonjour mikedavem ,

    Merci pour votre réponse, j'utilise SQL Server 2005.
    Pour votre méthode proposée je dois insérer toutes les données avec le INSERT, par contre j'ai des centaines de fichiers XML à partir desquels je dois extraire les données citées (EmployeNum, PVDateHeure), comment pourrai-je faire?

    Merci beaucoup pour votre intérêt

  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
    Personnellement j'utiliserais SSIS pour cela.

    SSIS possède tout ce qu'il faut pour votre problème :
    - Un composant FOREACH LOOP pour traitement l'ensemble de vos fichiers XML
    - Un composant XML permettant d'extraire et d'insérer vos données dans une base de données.

    ++

  5. #5
    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,

    Jetez un œil par ici

    @++

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Merci mikedavem et elsuket pour votre aide

    @++

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

Discussions similaires

  1. [WD16] Afficher les attributs d'une balise XML
    Par bombseb dans le forum WinDev
    Réponses: 8
    Dernier message: 01/03/2012, 15h43
  2. Recuperer les attributs d'une balise XML
    Par chwal dans le forum Langage
    Réponses: 2
    Dernier message: 21/08/2010, 14h40
  3. Modification d'un élement dans une balise XML
    Par Krash66 dans le forum Langage
    Réponses: 2
    Dernier message: 29/03/2009, 23h37
  4. [xsl] mauvaise interprétation du contenu d'une balise XML
    Par Cédric B. dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 27/01/2006, 12h59
  5. [JDOM] données un attribut à une balise xml
    Par noobiewan kenobi dans le forum Format d'échange (XML, JSON...)
    Réponses: 11
    Dernier message: 09/07/2004, 15h54

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