[ORACLE 10g - XML'owa baza danych]
Gordon - 11-05-2007 12:33
[ORACLE 10g - XML'owa baza danych]
Witam. Szukałem już na forum ale nie znalazłem. A mam taki poważny problem. Posiadam XML'ową bazę danych zbudowaną na bazie pliku XSD. Każdy plik XML który wrzucam do tablicy zbudowanej na Elemencie XML, jest bardzo duży, ponad 32 KB. I problem polega na tym, że nie mogę pisac update do tej tablicy, gdyż przy każdym dostaje komunikat o końcu pliku w kanale komunikacyjnym. Gdzie na tej samej bazce na mniejszym obiekcie update idzie jak trzeba. Dla przykładu daję treść update, jeśliby moje tłumaczenie było niezrozumiałe. update xml_doc d set value(d) =
updateXML(value(d), 'Pracownicy/pracownik/My_Pracownik/imie/MyString/text()','a')
where
extract(value(d), 'Pracownicy/pracownik/My_Pracownik/nazwisko/MyString/text()').getStringVal() = 'Kowalski';
Siedze już nad tym problemem dobre 6 godzin i nie wiem co mam zrobić. A jeszcze dodam, że jak zrobię select updateXML(..... itd.. to funkcja update zwraca mi ładny xml ze zmienionym imieniem. Proszę o pomoc.
Pozdrawiam i z góry dziękuje. Tomek.
dap997 - 11-05-2007 12:33
Gordon napisał(a): > Witam. > Szukałem już na forum ale nie znalazłem. A mam taki poważny problem. > Posiadam XML'ową bazę danych zbudowaną na bazie pliku XSD. > Każdy plik XML który wrzucam do tablicy zbudowanej na Elemencie XML, jest > bardzo duży, ponad 32 KB. > I problem polega na tym, że nie mogę pisac update do tej tablicy, gdyż przy > każdym dostaje komunikat o końcu pliku w kanale komunikacyjnym. > Gdzie na tej samej bazce na mniejszym obiekcie update idzie jak trzeba. > Dla przykładu daję treść update, jeśliby moje tłumaczenie było > niezrozumiałe. > update xml_doc d set value(d) = > > updateXML(value(d), > 'Pracownicy/pracownik/My_Pracownik/imie/MyString/text()','a') > > where > > extract(value(d), > 'Pracownicy/pracownik/My_Pracownik/nazwisko/MyString/text()').getStringVal() > = 'Kowalski'; > > Siedze już nad tym problemem dobre 6 godzin i nie wiem co mam zrobić. > A jeszcze dodam, że jak zrobię select updateXML(..... itd.. to funkcja > update zwraca mi ładny xml ze zmienionym imieniem. > Proszę o pomoc. > > Pozdrawiam i z góry dziękuje. Tomek.
Moze zmienna w ktora pakujesz dokument XML jest ma dlugosc 32K, albo inna krotsza od dokumentu?
dap
Gordon - 11-05-2007 12:33
> > Moze zmienna w ktora pakujesz dokument XML jest ma dlugosc 32K, albo inna > krotsza od dokumentu? > > dap
XML_DOC jest obiektem XML'owym. Jest to tablica stworzona na definicji xsd w bazie danych. Wypełniona jest już kilkoma tysiącami rekordów zawierających pliki XML o wielkości od 31 do 60 KB. I problem taki że nie mogę wartości w tej bazie updatować. Jak widać w zapytaniu, nie pakuję jej do żadnej zmiennej. Początkowo myślałem, że może updateXML nie razi sobie z takimi dużymi danymi, ale selecy updateXML oczywiście z getClobVal zwraca mi łądnego zmienionego jak trzeba xml'a. Nie wiem co zrobić? Pomocy ! :) Pozdrawiam Tomek.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=
Oracle 19g +Insert +Insert +Insert...
[oracle] zapytanie dynamiczne z =?ISO-8859-2?Q?=22dynamiczn=B1_?==?ISO-8859-2?Q?nazw=B1_tabeli=22?=
[Oracle] jak =?ISO-8859-2?Q?ograniczy=E6_pami=EA=E6_dla_se?==?ISO-8859-2?Q?rwera=3F?=
=?ISO-8859-2?Q?=5BOT=5D_Zdany_egzamin_Oracle_1Z0-007_a?==?ISO-8859-2?Q?_brak_informacji_na_stronie_Prometric_-_czy?==?ISO-8859-2?Q?_co=B6_nie_tak=3F?=
[oracle] czy da =?ISO-8859-2?Q?si=EA_z_poziomu_procedury_?==?ISO-8859-2?Q?zrobi=E6_kopi=EA_zapasow=B1=3F?=
MSSQL Express czy Oracle Express
=?iso-8859-2?q?[oracle]_Jak_sprawdzi=E6_wielko=B6=E6_tabeli_=3F=3F?=
=?ISO-8859-2?Q?Poszukjue_ksi=B1=BFki_"Oracle_?= =?ISO-8859-2?Q?optymalizacja_wydajno=B6ci"..?=
[Oracle] =?ISO-8859-2?Q?=A3=B1czenie_wierszy_z_zapytania_?==?ISO-8859-2?Q?w_jeden_string?=
zanotowane.pldoc.pisz.plpdf.pisz.plnocnerozmowy.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|