Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Futur Membre du Club
    Inscrit en
    juillet 2005
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : juillet 2005
    Messages : 65
    Points : 18
    Points
    18

    Par défaut Produire un arbre xml à partir de plusieurs tables SQL

    Bonsoir,

    J'ai une problématique qui me semble assez simple mais que je n'arrive pas à résoudre car je connais peux le xml et ce qui tourne autour.

    Pour faire simple, imaginons que j'ai 2 tables (ou 2 fichiers xml, c'est pareil), une pour les noms de famille, l'autre pour les prénoms. Les 2 sont liés par un id.

    Exemple de famille :
    Code :
    1
    2
    3
    4
     
    id_foyer  famille
    1           toto
    2           titi
    Exemple de prénoms :
    Code :
    1
    2
    3
    4
    5
     
    id  id_foyer   prenom
    50  1            vincent
    51  1            paul
    52  2            hervé
    le lien entre les 2 tables se fait via id_foyer.

    J'arrive facilement à produire un fichier xml qui ressemble à ceci :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <data>
      <id_foyer>1</id_foyer>
      <famille>toto</famille>
      <id>50</id>
      <prenom>vincent</prenom> 
    </data>
    <data>
      <id_foyer>1</id_foyer>
      <famille>toto</famille>
      <id>51</id>
      <prenom>paul</prenom>
    </data>
    ...
    En gros, c'est le résultat qui correspond à un left join sql.
    L'export que j'ai besoin de faire doit se faire sous la forme d'un arbre. Exemple :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <famille>
      <id_foyer>1</id_foyer>
      <famille>toto</famille>
      <prenoms>
         <id>50</id>
        <prenom>vincent</prenom> 
      </prenoms>
      <prenoms>
         <id>51</id>
         <prenom>paul</prenom> 
       <prenoms>
    </famille>
    ...
    En règle général, je fais des petits bout de code en procédure stockées ou en C, mais pour le coup, je coince. De plus la table qui représente le pied de l'arbre compte environ 15 millions de lignes.

    J'ai commencé à regarder du côté de XSLT, j'ai l'impression qu'en creusant, je dois pouvoir faire quelque chose.
    Avez vous des pistes à me donner ?
    Merci par avance.

  2. #2
    Rédacteur
    Avatar de Erwy
    Homme Profil pro erwan
    Développeur Web
    Inscrit en
    novembre 2003
    Messages
    4 974
    Détails du profil
    Informations personnelles :
    Nom : Homme erwan
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : novembre 2003
    Messages : 4 974
    Points : 10 978
    Points
    10 978

    Par défaut

    Ben non ce n'est pas pareil

    Si ce n'est pas du XML et que tu es sur Oracle, SQL Server ou postgreSQL tu peux obtenir directement ce format avec une simple requête SQL et les fonctions xmlelement,xmlagg et autres
    modérateur/rédacteur XML
    Je ne reponds pas aux questions par MP

    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

  3. #3
    Futur Membre du Club
    Inscrit en
    juillet 2005
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : juillet 2005
    Messages : 65
    Points : 18
    Points
    18

    Par défaut

    Bonjour Erwy

    quand je dis "c'est pareil", c'est plus pour dire que je peux exporter mes tables vers un fichier texte, xml pour créer mon arbre en dehors d'un sgbd.

    Je vais suivre ta piste pour voir.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •