Oracle
 sql >> Base de données >  >> RDS >> Oracle

Insertion d'un nœud enfant dans une colonne XMLTYPE

Le code suivant devrait fonctionner pour 11 et 12 (obsolète) :

SELECT insertXMLafter(XMLType('<a><b>1</b><c>3</c></a>'),
                 '/a/b', XmlType('<c>2</c>'))
  FROM dual;

Même code utilisant la nouvelle syntaxe XMLQuery :

SELECT XMLQuery('copy $tmp := . modify insert node 
                 <c>2</c>
                 after $tmp/a/b 
                 return $tmp'
                PASSING XmlType('<a><b>1</b><c>3</c></a>') RETURNING CONTENT)
  FROM dual;

Plus de détails concernant XMLQuery et également les anciennes fonctions obsolètes peuvent être trouvés ici : http://docs.oracle.com/database/121/ADXDB/app_depr_upd.htm#ADXDB6160