UPDATEXML | Mise-à-jour XML |
|---|---|
| Oracle Database SQL | Oracle 9i Release 2 (version 9.2) ou supérieure |
Syntaxe
| UPDATEXML(XMLType,XPath,expression,namespace) |
Paramètres
| Nom | Description |
|---|---|
| XMLTypeInstance | Ce paramètre permet d'indiquer l'instance de type XML. |
| XPath | Ce paramètre permet d'indiquer un ou plusieurs noeuds dans un ou plusieurs noeud enfant devant être mise à jour. |
| expression | Ce paramètre permet d'indiquer un ou plusieurs noeuds dans le type XML. |
| namespace | Ce paramètre permet d'indiquer l'espace de noms pour la recherche du chemin. |
Description
Cette fonction permet de mettre à jour un argument de type de données «XMLType» avec le chemin et la paire de valeur spécifiée.
Remarques
- UPDATEXML est une fonction puissante introduite dans Oracle 9i Release 2, permettant la modification dynamique d'un document XML stocké en type XMLType. Cela facilite la manipulation des données XML directement dans la base Oracle.
- La fonction prend en entrée une instance de type XMLType, ce qui signifie qu'elle travaille exclusivement avec des données XML structurées et typées, permettant d'appliquer des modifications ciblées au sein du document.
- Le paramètre XPath joue un rôle central, car il spécifie précisément les noeuds XML à modifier. Il peut cibler un ou plusieurs nouds enfants, offrant une flexibilité importante pour localiser exactement les parties du document à mettre à jour.
- La fonction permet de remplacer ou modifier la valeur des nouds ciblés via le paramètre expression, qui peut contenir une nouvelle valeur ou une nouvelle structure XML, modifiant ainsi le contenu original.
- Le paramètre namespace est optionnel mais essentiel lorsque le document XML utilise des espaces de noms (namespaces). Il garantit que la recherche XPath s'applique correctement dans le contexte du bon espace de noms, évitant des erreurs ou des sélections incorrectes.
- UPDATEXML renvoie un nouveau document XML modifié sans affecter directement l'original, ce qui permet de manipuler des documents XML de manière fonctionnelle, en préservant l'intégrité des données d'origine jusqu'à validation.
- Cette fonction est particulièrement utile dans les scénarios où les documents XML sont stockés en base et doivent être mis à jour partiellement, sans avoir à recréer ou recharger entièrement le document.
- La fonction s'intègre bien dans les requêtes SQL et peut être combinée avec d'autres fonctions XML d'Oracle, telles que XMLQuery ou XMLTable, pour des traitements complexes de données XML.
- Il faut faire attention à la syntaxe XPath utilisée, car des erreurs dans le chemin peuvent entraîner des résultats inattendus ou aucune modification si le noeud cible n'est pas trouvé.
- UPDATEXML peut être utilisée pour modifier non seulement des éléments de texte, mais aussi des attributs XML, ce qui la rend polyvalente pour diverses formes de données XML.
- Cette fonction ne modifie pas les documents XML stockés sous forme physique mais produit un résultat XML modifié à retourner ou à entreposer explicitement via une instruction UPDATE, ce qui donne un contrôle total sur la persistance.
- Bien que très utile, Oracle recommande dans certaines versions ultérieures d'utiliser plutôt la fonction XMLPatch ou des méthodes basées sur XQuery Update Facility, offrant des fonctionnalités plus avancées et une meilleure conformité aux standards XML.
Voir également
Article - Les géants de l'informatique - Oracle
Dernière mise à jour : Lundi, le 11 mai 2015