У меня есть данные, хранящиеся в виде таблицы HTML в виде типа CLOB в таблице, я пытался проанализировать их, как показано ниже, со ссылкой из Разбор таблицы HTML с помощью Oracle
with tbl as
(
SELECT ROW_ID,xmltype(SUBSTR(qe.NOTE, 0, INSTR(qe.NOTE, '<br>')-1)) xml_data
FROM MY_Table qe
WHERE EVENT='note'
)
select
ROW_ID,rtrim (xmlagg (xmlelement (e, x.data
|| '|')
ORDER BY x.row_number).extract ('//text()'), '|') AS Data
from
tbl
cross join
xmltable('/table/tr'
passing tbl.xml_data
columns
row_number FOR ORDINALITY,
data varchar2(2000) path 'td[1]'
) x
WHERE x.data IS NOT NULL
GROUP BY ROW_ID
вышеприведенное работает для некоторых значений, но выдает ошибку ORA-06502: PL/SQL: числовая или значение ошибки ORA-06512: в SYS.XMLTYPE, строка 272, как указано в самой ссылке Мы можем попробовать разобрать файл HTML с помощью синтаксического анализатора XML, но, скорее всего, это не удастся. Причина в том, что HTML-документы могут иметь следующие особенности HTML, которые парсеры XML не понимают. -- https://stackoverflow.com/a/32573619/266304
Есть ли в Oracle синтаксический анализатор HTML вместо синтаксического анализатора XML, я пытался искать, но ничего не вышло
Кто-нибудь, пожалуйста, помогите
CREATE JAVA
или утилитыloadjava
. - person MT0   schedule 16.06.2021