Zielony Smok - logo witryny

Apache Derby: operator XMLSERIALIZE

Opis

Odczytuje dane z typu Derby XML i przekształca je we wskazany typ znakowy.

Składnia polecenia

XMLSERIALIZE (string AS typZnakowy)

Objaśnienia

Słowo kluczowe ‘AS’ jest obowiązkowe.

‘string’ może być:

wartościa typu DerbyXML np. generowaną przez XMLQUERY:

Przykład

SELECT id, XMLSERIALIZE(pies AS CLOB) FROM psy

gdzie ‘id’ jest kolumną typu INTEGER, ‘pies’ jest kolumną typu typu XML w tabeli ‘psy’. Dane z kolumny XML są przekształcane w typ CLOB

Aby odzyskać dane z typu CLOB lub innego należy użyć stosownej metody JDBC.

Przykład 2

SELECT id, XMLSERIALIZE(XMLQUERY('//imie[@country=\"PL\"]' PASSING BY REF pies EMPTY ON EMPTY) AS CLOB) FROM psy

gdzie ‘id’ jest kolumną typu INTEGER, ‘pies’ jest kolumną typu XML w tabeli ‘psy’. XMLQUERY wyszukuje atrybut ‘country’ = ‘PL’ w elemencie ‘imie’ i zwraca wynik w postaci XML. XMLSERIALIZE pobiera XML i zwraca w postaci CLOB. Aby pobrać dane z CLOB należy użyć odpowiedniej metody JDBC.

‘string’ nie może być parametrem

‘typZnakowy’ to jeden z poniższych typów:

  • CHAR
  • LONG VARCHAR
  • VARCHAR
  • CLOB

Jeśli operator XMLSERIALIZE jest częścią zbioru wynikowego w zapytaniu, wynik może być pobrany przez właściwe dla typu metody getXXX JDBC.

Przykład

Przykład zbiorczy dla operatorów XML znajduje się we wpisie Apache Derby: operatory XML