powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Экранирование нечатаемых спецсимволов при формировании XML
7 сообщений из 7, страница 1 из 1
Экранирование нечатаемых спецсимволов при формировании XML
    #38529428
роман23t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет, в инете не нашел информации, может кто тут знает... существует необходимость формировать XML по полям из таблицы, которые могут содержать непечатаемые символы (ascii от 0 до 20 hex)

Вот пример (символ, который встретился и "взорвал" построение XML), оба варианты не работают

Код: plsql
1.
2.
select xmlelement("test",'') from dual
 select xmlelement("test",XMLCdata('')) from dual	



P.S. вариант с проверкой посимвольно выглядит не очень, может есть какой то более изящный способ
...
Рейтинг: 0 / 0
Экранирование нечатаемых спецсимволов при формировании XML
    #38529443
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
роман23tв инете не нашел информацииw3c.org
...
Рейтинг: 0 / 0
Экранирование нечатаемых спецсимволов при формировании XML
    #38529503
K790
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
роман23t,

Код: plsql
1.
select xmlelement("test",testing) from (select regexp_replace(unistr('te\0013st'), '[[:cntrl:]]', '') testing from dual);
...
Рейтинг: 0 / 0
Экранирование нечатаемых спецсимволов при формировании XML
    #38531367
роман23t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
K790, спасибо большое)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Экранирование нечатаемых спецсимволов при формировании XML
    #39361970
Рукикрюки
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В таблице есть CLOB-поля.
Надо втыкать их в xml и отдавать наружу в clob-e.
Обработка идет в курсоре типа:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare
  res clob;
begin
.....
for cr in (select xmlelement(xml_field, myclob_field) as xml_field from dual)
loop
    DBMS_LOB.APPEND(dest_lob => res, src_lob => cr.xml_field);
end loop;
...


Ругаецо, что не верный тип на входе.
Вопрос как прицепить xml_field к результирующему clob-у? Как преобразовать к нужному типу?
(Делаешь запрос и xmlelement возвращает вроде бы CLOB и какие преобразования еще нужны, если DBMS_LOB.APPEND принимает на входе два CLOB-а?)
Ели брать просто CLOB-поля, то все нормально. Если использховать xmlelement (для экранирования отдельных символов), то ломаемся.
...
Рейтинг: 0 / 0
Экранирование нечатаемых спецсимволов при формировании XML
    #39362002
Рукикрюки
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
точно .GetClobVal()
...
Рейтинг: 0 / 0
Экранирование нечатаемых спецсимволов при формировании XML
    #39376306
Рукикрюки
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А есть ли по теме аналог xmlelement в PL/SQL или если только самому написать?
зы фром дуал не предлагать )
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Экранирование нечатаемых спецсимволов при формировании XML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]