Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: XMLType niepełny insert
Forum PHP.pl > Forum > Bazy danych > Oracle
fredipop
Witam
Mam następujący problem z kolumna typu XML( dokładniej MXLType):


insert into ksiazka_xml values(15,XMLType('<ksiazka>
<tytul>Elektronika</tytul>
<autorzy>
<autor>Augustyn Chwaleba</autor>
<autor>Bogdan Moeschke</autor>
<autor>Grzegorz Ploszajski</autor>
</autorzy>
<wydawca>PWN</wydawca>
<wydanie>trzecie</wydanie>
<rok>1994</rok>
<typ>podrecznik</typ>
<isbn>00-32-2345-12</isbn>
</ksiazka>'));

wszystko jest ok
select * from ksiazka_xml where id=15;


pokazuje mi tylko:
<ksiazka>
<tytul>Elektronika</tytul>
<autorzy>
<autor>Augustyn Chwaleba<

Spawdzałem wyrażeniem XPath czy to tylko wina wyswietlenia selecta ale jedynym podżędnym węzłem jest własnie autor "Augusyn Chwaleba"
proszę o pomoc
Pozdrawiam
vespucci
Może to wina budowy bazy danych?
Może troche ją zmodyfikuj i zobacz czy zadziała.
<autorzy>
<autor1></autor1>
<autor2></autor2>
<autor3></autor3>
</autorzy>
Brałeś pod uwagę taką możliwość?
fredipop
Tak brałem pod uwage taką możliwość. Nie chcę modyfikować tego posta ale się pomyliłem bo jest to ewidentnie wina wyświetlania kolumny z xml'em, bo wyrażenie Xpath zwraca wyszukiwane wezły, a całego dokumentu nie moge wyświetlić:(

Sam sobie odpowiem na to banalne pytanie i napisze to gdyby kogoś tak zamroczyło jak mnie i żeby znalazł sobie odpowiedź.
Otóż jak wiadomo XMLtype jest to tak naprawdę CLOB więc
  1. SELECT ksiazka form ksiazka_xml;
nie pokaże nam tak pięknie jakby to mialo miejsce w przypadku kolumny typu np. varchar2.
Aby uzyskać żądany efekt trzeba użyć konstrukcji getStringVal(). Przykładowo
  1. SELECT f.ksiazka.getStringVal() FROM ksiazka_xml f;

pozdrawiam
fredipop
mosqi83
W konsoli SQL*Plus domyślnie wyświetlanych jest maksymalnie 80 bajtów danych typu LONG, CLOB i NCLOB.
Liczbę max. wyświetlanych znaków (bajtów) możesz zmienić poprzez
  1. SET LONG n

gdzie n to liczba max. wyświetlanych znaków np. 9999.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.