XMLType

0

Witam,

Ma problem z poprawna obsluga xmla w kolumnie. Problem dotyczy jego specyficznego ukladu/struktury:

<DANE>
  <DZIECI>
    <DZIECI_DEFINICJA nazwisko="kowalscy">
      <DZIECKO_KOL lp="1" nazwa="Id" opis="Id" typ="NUMBER"/>
      <DZIECKO_KOL lp="2" nazwa="Imie" opis="Imię" typ="VARCHAR2"/>
    </DZIECI_DEFINICJA>
    <DZIECI_DANE>
      <DZIECKO_DANE lp="1">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Krzysztof</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
	  <DZIECKO_DANA lp="2">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Aneta</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
	  <DZIECKO_DANE lp="3">
		<DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Jaś</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
    </DZIECI_DANE>
  </DZIECI>
  <DZIECI>
    <DZIECI_DEFINICJA nazwisko="poziomka">
      <DZIECKO_KOL lp="1" nazwa="Id" opis="Id" typ="NUMBER"/>
      <DZIECKO_KOL lp="2" nazwa="Imie" opis="Imię" typ="VARCHAR2"/>
    </DZIECI_DEFINICJA>
    <DZIECI_DANE>
      <DZIECKO_DANE lp="1">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Artur</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
    </DZIECI_DANE>
  </DZIECI>
<DANE>

Chce dodac dziecko pastwu "poziomka" ;)
Robiac cos takiego:

UPDATE xml_dzieci
SET  CLOBXMLCOL = INSERTCHILDXML(CLOBXMLCOL, 'DANE/DZIECI','DZIECI_DANE', 
                XMLType('<DZIECKO_DANE lp="2">
                            <DZIECKO_KOL_WART lp="1" nazwa="Id">2</DZIECKO_KOL_WART>
                            <DZIECKO_KOL_WART lp="2" nazwa="Imie">Dominika</DZIECKO_KOL_WART>
                         </DZIECKO_DANE>'))

Dziecko dodaje sie rowniez Panstwu Kowalskim. Jak powyzsza strukture ograniczyc tylko do Panstwa poziomka?
Drugie pytanie: czy da sie jakos pobrac max wartosc lp z <DZIECKO_DANE lp="3"> i chcialbym otrzymac przykladowo 3.

0

poprawiony xml we wczesniejszym byl blad:

<DANE>
  <DZIECI>
    <DZIECI_DEFINICJA nazwisko="kowalscy">
      <DZIECKO_KOL lp="1" nazwa="Id" opis="Id" typ="NUMBER"/>
      <DZIECKO_KOL lp="2" nazwa="Imie" opis="Imię" typ="VARCHAR2"/>
    </DZIECI_DEFINICJA>
    <DZIECI_DANE>
      <DZIECKO_DANE lp="1">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Krzysztof</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
	  <DZIECKO_DANE lp="2">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Aneta</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
	  <DZIECKO_DANE lp="3">
		<DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Jaś</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
    </DZIECI_DANE>
  </DZIECI>
  <DZIECI>
    <DZIECI_DEFINICJA nazwisko="poziomka">
      <DZIECKO_KOL lp="1" nazwa="Id" opis="Id" typ="NUMBER"/>
      <DZIECKO_KOL lp="2" nazwa="Imie" opis="Imię" typ="VARCHAR2"/>
    </DZIECI_DEFINICJA>
    <DZIECI_DANE>
      <DZIECKO_DANE lp="1">
        <DZIECKO_KOL_WART lp="1" nazwa="Id">1</DZIECKO_KOL_WART>
        <DZIECKO_KOL_WART lp="2" nazwa="Imie">Artur</DZIECKO_KOL_WART>
      </DZIECKO_DANE>
    </DZIECI_DANE>
  </DZIECI>
<DANE>
0

Ok, temat juz rozwiazany.

following-sibling::*

w sciezce rozwiazuje sprawe

1 użytkowników online, w tym zalogowanych: 0, gości: 1