Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SqlXml выборка данных в Xml по Xsd  [new]
Алексей Кр
Member

Откуда: Белгород
Сообщений: 458
Имеется у нас механизм.
Описывается xsd схема, сразу блок (над которым возник вопрос):

<xs:element name="elements" sql:is-constant="1">
	<xs:complexType>
		<xs:sequence>
			<xs:element name="elem" sql:relation="Table_Elem" sql:relationship="sqlrel_elem">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="name" type="xs:string" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>																	
		</xs:sequence>
	</xs:complexType>
</xs:element>


Таблица (простенькая которая получает данные) для данной xml структуры
SELECT 
  Table_Parent.key as keyCard
  ,'1' as name
from [table1] f
  join Table_Parenton f.key=Table_Parent.key 


Получаем массив:
<elements>
    <elem>
         <name>1</name>
    </elem>
    <elem>
         <name>1</name>
    </elem> и т.д.
</elements>


Требуется получить:
<elements>
    <elem>1</elem>
    <elem>1</elem> и т.д.
</elements>


строчка нужна Table_Parent.key as keyCard, для определения "родителя"/"ребенка" в xml в соответствии с sql-relations...
Вопрос, как нужно оформить xsd схему?

т.к. управление передается в SqlXml далее все запросы выполняются на стороне Sql Server и там же строится xml...

Может кто подскажет?

Заранее благодарен!
30 ноя 14, 13:19    [16926960]     Ответить | Цитировать Сообщить модератору
 Re: SqlXml выборка данных в Xml по Xsd  [new]
Алексей Кр
Member

Откуда: Белгород
Сообщений: 458
Если сделать так:

<xs:element name="elements" sql:relation="elementsTable">
   <xs:complexType>
       <xs:sequence>
          <xs:element name="elem" sql:field="elem" type="xs:string" />
       </xs:sequence>
   </xs:complexType>
</xs:element>


То получим так:

<elements>
     <elem>1</elem>
</elements>
<elements>
     <elem>2</elem>
</elements>


Т.е. name заменили на elem

А вот как сделать корневой тег <elements> единым! Вопрос! (((((((((
1 дек 14, 10:34    [16929808]     Ответить | Цитировать Сообщить модератору
 Re: SqlXml выборка данных в Xml по Xsd  [new]
Алексей Кр
Member

Откуда: Белгород
Сообщений: 458
Нашел решение!

<xs:element name="elements" sql:is-constant="1"> 
	<xs:complexType>
		<xs:sequence>
			<xs:element name="elem" sql:relation="Table_Elem" sql:relationship="sqlrel_elem" sql:field="name" type="xs:string" />
		</xs:sequence>
	</xs:complexType>
</xs:element>
1 дек 14, 10:44    [16929877]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить