[oracle] mod_plsql - wynik jako XML ?
Marcin 'goral' Goralski - 14-05-2006 00:47
[oracle] mod_plsql - wynik jako XML ?
Witam,
bawie sie znowu mod_plsql'em, i chcialbym zamiast zwyklych stron HTML wywalic czystego XML na podstawie zapytania. Skorzystalem z DBMS_XMLQUERY, ale cos mi nie idzie z wywaleniem CLOBA na wyjscie - czyzbym musial przepisywac po kawalku do jakiegos VARCHAR2 ?
A moze ktos zna jakis odnosnik do istniejacego rozwiazania tego typu ? Zrzucanie plikow XML na storage calkowicie odpada ... musi isc on-line do przegladarki w czystym XMLu, lub, chetnie za posrednictwem XSLT.
marcin
Szczepan Marchewka - 14-05-2006 00:47
Marcin 'goral' Goralski <goralski.marcin@BEZ.SMIECI.wp.pl> napisał(a): > bawie sie znowu mod_plsql'em, i chcialbym zamiast zwyklych stron HTML > wywalic czystego XML na podstawie zapytania. > Skorzystalem z DBMS_XMLQUERY, ale cos mi nie idzie z wywaleniem CLOBA na > wyjscie - czyzbym musial przepisywac po kawalku do jakiegos VARCHAR2 ? > A moze ktos zna jakis odnosnik do istniejacego rozwiazania tego typu ? > Zrzucanie plikow XML na storage calkowicie odpada ... musi isc on-line > do przegladarki w czystym XMLu, lub, chetnie za posrednictwem XSLT.
Ja u siebie do wyrzucania Excela mam tak:
OWA_UTIL.mime_header ('application/vnd.ms-excel', FALSE); HTP.p ('Content-length: ' || DBMS_LOB.getlength (v_zest_typ.tresc_bin)); HTP.p ('Content-disposition: inline; filename="' || TO_CHAR (SYSDATE, 'YYYYMMDD_HH24MISS') || '.xls"'); OWA_UTIL.http_header_close; wpg_docload.download_file (v_zest_typ.tresc_bin);
Gdzie v_zest_typ.tresc_bin to BLOB.
A do wyrzucania wykresu jako SVG (w CLOB) mam tak:
v_wykres CLOB; v_len NUMBER := 0; v_amount NUMBER := 31999; v_text VARCHAR2 (32000); v_offset NUMBER := 1; ... OWA_UTIL.mime_header ('image/svg+xml', FALSE); OWA_UTIL.http_header_close; v_len := DBMS_LOB.getlength (v_wykres);
WHILE (v_len > 0) LOOP v_text := DBMS_LOB.SUBSTR (v_wykres, v_amount, v_offset); v_len := v_len - v_amount; v_offset := v_offset + v_amount; HTP.prn (v_text); END LOOP; ...
Szczepan@Marchewka.info.pl ----- In the beginner's mind there are many possibilities, but in the expert's mind there are few. (Shunryu Suzuki 1905-1971)
Marcin 'goral' Goralski - 14-05-2006 00:47
Szczepan Marchewka wrote:
> WHILE (v_len > 0) LOOP > v_text := DBMS_LOB.SUBSTR (v_wykres, v_amount, v_offset); > v_len := v_len - v_amount; > v_offset := v_offset + v_amount; > HTP.prn (v_text); > END LOOP;
czyli przepisujesz ... mialem nadzieje, ze da sie bezposrednio CLOBa wywalic. Dzieki ...
marcin
Marcin 'goral' Goralski - 14-05-2006 00:47
Szczepan Marchewka wrote:
> OWA_UTIL.mime_header ('image/svg+xml', FALSE); > OWA_UTIL.http_header_close; > v_len := DBMS_LOB.getlength (v_wykres); > > WHILE (v_len > 0) LOOP > v_text := DBMS_LOB.SUBSTR (v_wykres, v_amount, v_offset); > v_len := v_len - v_amount; > v_offset := v_offset + v_amount; > HTP.prn (v_text); > END LOOP;
zrobilem po swojemu, ale na podobnej zasadzie. Jednak wywala mi zawartosc XMLa jako tekst, pomijajac tagi XML. Headerek jest ustawiony na text/xml. Cos jeszcze trzeba ustawic ? I przy okazji ... na poczatku uzyskanego w ten sposob wyniku jest kilka pustych linii - wiesz jak sie tego pozbyc ?
dzieki
marcin
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?=
[oracle 10g] czy =?ISO-8859-2?Q?mo=BFna_wy=B3=B1czy=E6_wszys?==?ISO-8859-2?Q?tkie_wi=EAzy_w_schemacie=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"..?=
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.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 |
|