Update-xml-element mit dem Wert in Oracle
Dass eine XMLTYPE-Spalte einer Oracle-Tabelle, möchte ich zum aktualisieren der Werte von xml-Elementen mit UpdateXML Methode, aber ich habe Probleme dabei, da der namespace, die angewendet wird auf ein xml-element, das ist nicht Eltern. Die xml-Struktur meiner elmenets in etwa so aussieht:
<a>
<b xmlns="urn:www.someSite.com/myModel">
<c>my value</c>
</b>
</a>
ein update von der folgenden form funktioniert es nicht:
UPDATE myTable
SET myColumn = UpdateXML(myColumn, '/a/b/c','other value', 'xmlns="urn:www.someSite.com/myModel"');
- Kannst du nicht ändern Sie die xml-Datei zu haben, zumindest einen Kurznamen für den namespace ie
xmlns:ns1="urn:www.someSite.com/myModel"
so dass Sie könnte/a/ns1:b/ns1:c
- Nein, ich kann nicht ändern der xml, das ist das format, in dem gespeichert wird in der Datenbank, und es kann nicht geändert werden.
Du musst angemeldet sein, um einen Kommentar abzugeben.
So ziemlich das gleiche wie dieser Beitrag aber hässlicher...
EDIT: Wenn Sie mehr als eine
b
element ina
Sie ändern müssen, den gesamten text innerhalba
und nicht für jedes Kind, so Sie versuchen können: