powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / загрузка XML продукта сумрачного гения
5 сообщений из 5, страница 1 из 1
загрузка XML продукта сумрачного гения
    #39654322
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как известно, научи дурака богу молиться...

Вот, продукт сумрачного разума. Для тех, кто не въехал:
текст в
<name>
разделен на
<br/>
.
Результат - sqlXmlBulkLoader резонно ругается
xmlBulkLoad.vbs(13, 1) XML SAX Parser: Data mapping to column 'name' was already found in the data. Make sure that no two sche
ma definitions map to the same column.

XML
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<cruises>

<cruise id="33430">

<start>02.06.2018</start>

<stop>09.06.2018</stop>

<days>8</days>

<name>
Круиз ЖЕМЧУЖИНЫ ПОЛЕСЬЯ 
<br/>
МОЗЫРЬ-Новоселки-Национальный парк Припятский-Лясковичи-Туров-Стахово-Качановичи-Пинск 2 дня-Дубое-Мотоль-Достоево-Ляховичи-Кобрин-БРЕСТ.
</name>



Схема
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
        <xs:element name="cruise"
                    sql:relation="[nika_cruises]" 
                    sql:key-fields="id"
        >
          <xs:complexType>
            <xs:sequence>
              <xs:element name="start" type="xs:string" minOccurs="0" msdata:Ordinal="0" />
              <xs:element name="stop" type="xs:string" minOccurs="0" msdata:Ordinal="1" />
              <xs:element name="days" type="xs:string" minOccurs="0" msdata:Ordinal="2" />

              <xs:element name="name" minOccurs="0" maxOccurs="unbounded" type="xs:string" />

<!--
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="br" minOccurs="0" maxOccurs="unbounded" sql:is-constant="1" >
                      <xs:complexType>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
-->



Ну, тривиальный то выход есть - похерить в файле <br/>.

Может у кого есть другие идеи?
...
Рейтинг: 0 / 0
загрузка XML продукта сумрачного гения
    #39654358
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
навсякий, такой запрос, эту траблу "обходит"
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
declare @xml xml =
'<cruises>
<cruise id="33430">
<start>02.06.2018</start>
<stop>09.06.2018</stop>
<days>8</days>
<name>
Круиз ЖЕМЧУЖИНЫ ПОЛЕСЬЯ 
<br/>
МОЗЫРЬ-Новоселки-Национальный парк Припятский-Лясковичи-Туров-Стахово-Качановичи-Пинск 2 дня-Дубое-Мотоль-Достоево-Ляховичи-Кобрин-БРЕСТ.
</name>
</cruise>
</cruises>'

select 
	t.c.value('.', 'varchar(255)') as xz
from @xml.nodes('cruises/cruise/name') as t(c)


xz Круиз ЖЕМЧУЖИНЫ ПОЛЕСЬЯ МОЗЫРЬ-Новоселки-Национальный парк Припятский-Лясковичи-Туров-Стахово-Качановичи-Пинск 2 дня-Дубое-Мотоль-Достоево-Ляховичи-Кобрин-БРЕСТ.
понятно, что ты грузишь XmlBulkLoader-ом, но может там можно как-то "настоять" что бы нода name именно так доставалась (?)
...
Рейтинг: 0 / 0
загрузка XML продукта сумрачного гения
    #39654445
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
@xml.nodes('cruises/cruise/name') as t(c)


Так я умею.
Нужно потоковым парсером XML загрузить.
...
Рейтинг: 0 / 0
загрузка XML продукта сумрачного гения
    #39654697
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел вот-здесь . Может поможет.
Код: xml
1.
2.
3.
4.
5.
6.
7.
<xs:element name="name">
  <xs:complexType mixed="true">
    <xs:sequence>
      <xs:any minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>          
  </xs:complexType>
</xs:element>
...
Рейтинг: 0 / 0
загрузка XML продукта сумрачного гения
    #39654782
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
              <xs:element name="name" >
                <xs:complexType mixed="true">
                  <xs:sequence>
                    <xs:any namespace="http://www.w3.org/1999/xhtml"
                            processContents="lax"
                            minOccurs="0"
                            maxOccurs="unbounded" />
                    </xs:sequence>          
                  </xs:complexType>
              </xs:element>



Schema mapping: Schema: mixed content is not allowed on element 'name'. Property elements cannot have subelements.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / загрузка XML продукта сумрачного гения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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