banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 15 May 2013 14:22

damika
Participant occasionnel
Lieu: Bidart
Date d'inscription: 3 Aug 2010
Messages: 33

PostgreSQL structure de la table en XML

Bonjour,
Voilà je cherche à exporter la structure, et non le contenu, d'une table en XML. Il ne me semble pas que table_to_xml réponde à mon besoin ou je n'ai pas su l'utiliser correctement.

Je souhaiterais obtenir quelque chose du genre :

Code:

<table name="nom_table" oids="true">
    <schema name="public"/>
    <column name="column1" not-null="true">
        <type name="serial"/>
    </column>
    <column name="column2">
        <type name="timestamp"/>
    </column>
    <column name="column3">
        <type name="geometry"/>
    </column>
....
</table>

Quelqu'un aurait-il une piste?
D'avance merci

Hors ligne

 

#2 Wed 15 May 2013 15:28

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1554

Re: PostgreSQL structure de la table en XML

Bonjour,

Une rapide recherche indique cet outil: http://www.sql-workbench.net/manual/wb- … ema-report

Sinon, plusieurs approches:

1°) faire une requete sur les tables de catalogue concernant la table dont on veut la structure et appeler les fonctions XML de formatage sur cette requete (ou table temporaire). Cela permet de controler exactement les tags que l'on veut.

2°) Choisir le formatage HTML dans psql puis demander la structure de la table: elle est alors dumpée en table HTML, a peu près XML compatible. Une transfo XSL derriere peut mettre le doc dans la structure attendue.

3°) appeler table_to_xml_and_xmlschema, vous aurez alors le schema du type créé pour la table. Une transformation XSL devrait etre aisée, le schéma obtenu est de type:

Code:

<xsd:complexType name="RowType.nicolas.public.parc_activite">                   +
   <xsd:sequence>                                                                +
     <xsd:element name="id" type="INTEGER" nillable="true"></xsd:element>        +
     <xsd:element name="surf_dispo" type="DOUBLE" nillable="true"></xsd:element> +
     <xsd:element name="surf_totale" type="DOUBLE" nillable="true"></xsd:element>+
   </xsd:sequence>                                                               +
 </xsd:complexType>

Nicolas

Dernière modification par Nicolas Ribot (Wed 15 May 2013 16:27)

Hors ligne

 

Pied de page des forums

Powered by FluxBB