powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / xml обзор технологий
19 сообщений из 19, страница 1 из 1
xml обзор технологий
    #39627844
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения за вероятно глупый вопрос,
но это по части некой обзорной части технологии xml. Как-то сходу в инете не удалось найти варианты решения.

слепить xml можно из селекта (xmlgen), при помощи xsd-схемы,xmldom'ом, можно просто текстовым файлом....

а если у файла есть вложенность - можно ли как-то без xsd-схемы его слепить ? есть на примете технология ? например, идеально было бы с применением массива is table of.
...
Рейтинг: 0 / 0
xml обзор технологий
    #39627846
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадеждыесть на примете технология ?RTFM Concatenation Operator (FAQ)


http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM
...
Рейтинг: 0 / 0
xml обзор технологий
    #39628086
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicОкеанНадеждыесть на примете технология ?RTFM Concatenation Operator (FAQ)


http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM

||- очень элегантно )
...
Рейтинг: 0 / 0
xml обзор технологий
    #39628096
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадежды
||- очень элегантно )

я в хмл учусь (сам не знаю зачем)
но что значіт фраза "если у файла есть вложенность"
можно пример, что есть, что надо

....
stax
...
Рейтинг: 0 / 0
xml обзор технологий
    #39628115
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне однажды понравилось про высокоточные устройства tnsnames.ora & sqlnnet.ora , можно их разобрать для тренировки.
...
Рейтинг: 0 / 0
xml обзор технологий
    #39628492
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmdmdmМне однажды понравилось про высокоточные устройства tnsnames.ora & sqlnnet.ora , можно их разобрать для тренировки.

что-то это совсем не по теме
...
Рейтинг: 0 / 0
xml обзор технологий
    #39628540
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадежды,

Если привести примеры "у файла есть вложенность", ожидаемый результат и что уже попробовал сам, то стёба будет чуточку меньше, а ответы несколько ближе к решению.
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629406
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
например, есть массив
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
declare
  type acc_inf is record(
    code varchar2(25),
    name varchar2(4000));
  type acc_inf_arr is table of acc_inf;

  type all_inf is record(
    num_doc number,
    acc_all acc_inf_arr);
begin
  -- нужно создать ксемельник по all_inf
  -- где во вложенном массиве acc_all может быть несколько записей

  null;
end
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629407
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну точнее, не дописала , конечно type all_inf_arr is table of all_inf;

declare
type acc_inf is record(
code varchar2(25),
name varchar2(4000));
type acc_inf_arr is table of acc_inf;

type all_inf is record(
num_doc number,
acc_all acc_inf_arr);
type all_inf_arr is table of all_inf;
begin
-- нужно создать ксемельник по all_inf_arr
-- где во вложенном массиве acc_all может быть несколько записей

null;
end
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629415
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадежды
Код: plsql
1.
2.
  -- нужно создать ксемельник по all_inf
  -- где во вложенном массиве acc_all может быть несколько записей

Ты не умеешь клеить в цикле? Или имея кастомные типы ждёшь чуда?
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629418
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадежды,

Если обойтись типами уровня схемы или ковертировать в AnyData, то конструктор xmltype всё сделает за тебя.

Можно сформировать и непосредственно по данным запроса.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
SQL> select xmltype(cursor(select 666 num_doc,
  2                               cursor(select rownum code, 'name' || rownum name
  3                                        from dual
  4                                      connect by rownum <= 3)
  5                                  acc_all
  6                          from dual))
  7            x
  8    from dual;

X
----------------------------------------------------------------------------------------------------
<?xml version="1.0"?>
<ROWSET>
 <ROW>
  <NUM_DOC>666</NUM_DOC>
  <ACC_ALL>
   <ACC_ALL_ROW>
    <CODE>1</CODE>
    <NAME>name1</NAME>
   </ACC_ALL_ROW>
   <ACC_ALL_ROW>
    <CODE>2</CODE>
    <NAME>name2</NAME>
   </ACC_ALL_ROW>
   <ACC_ALL_ROW>
    <CODE>3</CODE>
    <NAME>name3</NAME>
   </ACC_ALL_ROW>
  </ACC_ALL>
 </ROW>
</ROWSET>
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629433
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshopМожно сформировать и непосредственно по данным запроса.
Занудства ради - возможности формирования XMLType в select существенно шире представленных.
Чтить доку по XMLELEMENT, XMLATTRIBUES, XMLAGG и иже с ними.
Ну и DBMS_XMLGEN до кучи.
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629444
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshopОкеанНадежды,

Если обойтись типами уровня схемы или ковертировать в AnyData, то конструктор xmltype всё сделает за тебя.

Можно сформировать и непосредственно по данным запроса.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
SQL> select xmltype(cursor(select 666 num_doc,
  2                               cursor(select rownum code, 'name' || rownum name
  3                                        from dual
  4                                      connect by rownum <= 3)
  5                                  acc_all
  6                          from dual))
  7            x
  8    from dual;

X
----------------------------------------------------------------------------------------------------
<?xml version="1.0"?>
<ROWSET>
 <ROW>
  <NUM_DOC>666</NUM_DOC>
  <ACC_ALL>
   <ACC_ALL_ROW>
    <CODE>1</CODE>
    <NAME>name1</NAME>
   </ACC_ALL_ROW>
   <ACC_ALL_ROW>
    <CODE>2</CODE>
    <NAME>name2</NAME>
   </ACC_ALL_ROW>
   <ACC_ALL_ROW>
    <CODE>3</CODE>
    <NAME>name3</NAME>
   </ACC_ALL_ROW>
  </ACC_ALL>
 </ROW>
</ROWSET>



спасибо! очень нравится вариант,
попробую- отпишусь.

интересно, какие подводные камни этого метода
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629446
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousdbms_photoshopМожно сформировать и непосредственно по данным запроса.
Занудства ради - возможности формирования XMLType в select существенно шире представленных.
Чтить доку по XMLELEMENT, XMLATTRIBUES, XMLAGG и иже с ними.
Ну и DBMS_XMLGEN до кучи.

с DBMS_XMLGEN знакома, вроде , им вложенность не создашь
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629463
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОкеанНадеждыс DBMS_XMLGEN знакома, вроде , им вложенность не создашьПлохо познакомилась.
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629478
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очень круто все получилось сделать через

всем спасибо!
но если кто-либо захочет еще покидать интересных ссылок- приветствуется со страшной силой ;) все почитаю

примерчик:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
SELECT  (XMLElement("TAG",
        xmltype('<kkk> fkjvnhfjkvnh </kkk>'),
        XMLAgg(XMLElement("ResultTag",
            XMLElement("sacc_number", acc.code),
            XMLElement("sacc_name",null))))
    ).GetStringVal() as TAG
  FROM eid.eid_firma_account acc
 where reference in (1199547, 98822715)
 and branch = 191
 
 
 SELECT  (XMLElement("TAG",
        xmltype('<kkk> fkjvnhfjkvnh </kkk>'),
        XMLElement("ResultTag",
            XMLElement("sacc_number", acc.code),
            XMLElement("sacc_name",null)))
    ).GetStringVal() as TAG
  FROM eid.eid_firma_account acc
 where reference in (1199547, 98822715)
 and branch = 191
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629479
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbms_photoshopОкеанНадеждыс DBMS_XMLGEN знакома, вроде , им вложенность не создашьПлохо познакомилась.

хм?
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629510
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и для пустых тегов, которые не должны выводиться- добавила XMLFOREST

вообще, так классно

скажите, а какой может быть подвох в использовании XMLElement ? не может же быть так все хорошо ?

что-то не нашла никаких особых предупреждений
...
Рейтинг: 0 / 0
xml обзор технологий
    #39629527
ОкеанНадежды
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с отображением тегов только небольшая заминка

если не добавить XMLROOT - то может выводить закрывающий тег в пустом теге
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / xml обзор технологий
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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