Manipulation de la BDD et des données
Mise en place BaseX
BaseX est léger et portable, sous Linux, on peut l'utiliser directement par extraire l'archive.
Lien de téléchargement : http://basex.org/products/download/all-downloads/
Sous Linux : Zip Archive
Sous Windows : Windows Installer
Pour accéder à l'interface de BaseX, exécuter .../basex/bin/basexgui avec
./basexgui
Créer une base de données à partir d'un fichier XML
Nous prendrons comme base de travail, un fichier XML de données Open Data, sur les prix des carburants mises à disposition quotidiennement :
On aurait un fichier dont nom est sous forme "PrixCarburants_xxxxxxx.xml". Renommz-le en "PrixCarburants.xml" pour simplifier l'exercice en suite.
Question
Ajouter le fichier XML suivant à la base de données et vérifier sur l'interface graphique
Question
XQuery Update
Syntax de XQuery :
Syntax
Explication
Example
let
Déclaration d'une variable et/ou affectation de sa valeur.
Une variable est toujours précédée par le symbole "$"
let $var := "maVariable"
return
Clause qui permet de construire le résultat.
Elle est obligatoire.
return + [XQuery Update]
Étudier le fichier suivant puis s'en servir pour supprimer le premier nœud <pdv> du fichier PrixCarburants.xml.
Télécharger le fichier suivant
Question
Exécutez le suppressionNoeud.xq et vérifiez le résultat dans l'interface graphique.
Supplémentaire : Remettre le nœud qu'on vient de supprimer dans le fichier PrixCarburants.xml en passage de file système
<pdv id="1000001" latitude="4620114" longitude="519791" cp="01000" pop="R">
<adresse>596 AVENUE DE TREVOUX</adresse>
<ville>SAINT-DENIS-LèS-BOURG</ville>
<ouverture debut="01:00:00" fin="01:00:00" saufjour=""/>
<services>
<service>Station de gonflage</service>
<service>Vente de gaz domestique</service>
<service>Automate CB</service>
</services>
<prix nom="Gazole" id="1" maj="2016-11-14T09:11:30" valeur="1119"/>
<prix nom="SP95" id="2" maj="2016-11-14T09:11:30" valeur="1309"/>
<prix nom="SP98" id="6" maj="2016-11-14T09:11:30" valeur="1355"/>
<rupture id="5" nom="E10" debut="2015-02-09T16:02:00" fin="2016-11-20T00:11:42"/>
</pdv>
<pdv id="1000001" latitude="4620114" longitude="519791" cp="01000" pop="R"> <adresse>596 AVENUE DE TREVOUX</adresse> <ville>SAINT-DENIS-LèS-BOURG</ville> <ouverture debut="01:00:00" fin="01:00:00" saufjour=""/> <services> <service>Station de gonflage</service> <service>Vente de gaz domestique</service> <service>Automate CB</service> </services> <prix nom="Gazole" id="1" maj="2016-11-14T09:11:30" valeur="1119"/> <prix nom="SP95" id="2" maj="2016-11-14T09:11:30" valeur="1309"/> <prix nom="SP98" id="6" maj="2016-11-14T09:11:30" valeur="1355"/> <rupture id="5" nom="E10" debut="2015-02-09T16:02:00" fin="2016-11-20T00:11:42"/> </pdv>
Question
Comment on accède un document XML en passant par file system ?
Question
Qu'est-ce qu'on doit faire pour mettre à jour le fichier source ?
Question
Est-ce qu'on voit la modification dans l'interface graphique ? Pour quoi ?
Question
Supprimer la base de données en ligne de commandes