Funzione XMLUpdate()

La funzione 'XMLUpdate() aggiorna con un nuovo valore la parte di un documento XML (elementi, attributi o nodi) identificata da XPath. I tipi di dati della destinazione XPath e del nuovo valore devono corrispondere.

Non è possibile utilizzare direttamente la funzione 'XMLUpdate() per inserire un nuovo nodo o eliminare un nodo, un elemento o un attributo. Si deve invece aggiornare l'elemento genitore contenente il nuovo valore.

Descrizione

La funzione " XMLUpdate() ha due forme. Uno aggiorna un documento XML con un valore scalare (varchar) e l'altro aggiorna un documento XML con un documento XML:
XML = XMLUpdate(XML input, varchar XPath, varchar value);
XML = XMLUpdate(XML input, varchar XPath, XML value);

Il valore " input specifica un documento XML che contiene un frammento da aggiornare.

Il valore 'Xpath specifica un'espressione XPath utilizzata per individuare il frammento XML da aggiornare. Se 'Xpath è un elemento XML, il corrispondente 'value deve essere di tipo XML. Se 'Xpath è un nodo attributo o testo, 'value può essere un qualsiasi tipo di dato scalare.

Il valore 'value specifica il nuovo valore da assegnare al frammento XML.

Risultati

La funzione restituisce un documento XML contenente un frammento aggiornato.

Esempio

Questo esempio aggiorna il nome dell'azienda nei documenti XML degli ordini a Netezza®, dove l'addetto alle vendite è John Smith:
update sales_tab
set order = XMLUpdate(order,
'/order/company/name',
XMLParse('<Name>Netezza</Name>'))
where sales_person = “John Smith“