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

Откуда:
Сообщений: 827
Коллеги, приветствую!

Есть чайниковский вопрос:
Имеется N таблиц, связанных через foreign keys 1-ко-многим, с единственным корнем.
Сейчас они пустые и только что созданные.

Можно ли запросом создать xsd-схему для всего этого набора таблиц?
Для одной таблицы - это просто:
Select *
	from [dbo].[ROOT] [ROOT]
FOR XML AUTO, ELEMENTS, XMLSCHEMA 

А как вытащить всё деревце сразу?
Есть какое нибудь (сравнительно простое) средство?
4 май 18, 17:26    [21388195]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31371
uaggster
Коллеги, приветствую!

Есть чайниковский вопрос:
Имеется N таблиц, связанных через foreign keys 1-ко-многим, с единственным корнем.
Сейчас они пустые и только что созданные.

Можно ли запросом создать xsd-схему для всего этого набора таблиц?
Для одной таблицы - это просто:
Select *
	from [dbo].[ROOT] [ROOT]
FOR XML AUTO, ELEMENTS, XMLSCHEMA 


А как вытащить всё деревце сразу?
Есть какое нибудь (сравнительно простое) средство?
Делаете запрос всего набора таблиц с FOR XML AUTO, ELEMENTS, XMLSCHEMA
4 май 18, 17:37    [21388239]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
uaggster
Member

Откуда:
Сообщений: 827
alexeyvg, всё б хорошо, но таблицы - пустые.
И, соответственно, когда я горожу сложносочиненный запрос, который должен сгенерировать хмл нужной структуры - множество записей получается пустым, и схема не создается.
Получается, что придется нагенерировать фейковый контент предварительно?
4 май 18, 21:24    [21388647]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31371
uaggster
alexeyvg, всё б хорошо, но таблицы - пустые.
И, соответственно, когда я горожу сложносочиненный запрос, который должен сгенерировать хмл нужной структуры - множество записей получается пустым, и схема не создается.
Получается, что придется нагенерировать фейковый контент предварительно?
Ээээ, не понял мысль - без оператора JOIN схема генерится нормально, а с ним пусто?
Странно, у меня всё работает.
5 май 18, 17:53    [21389724]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
uaggster
Member

Откуда:
Сообщений: 827
alexeyvg, гм, а почему join?
Я с помощью подзапросов делаю.
Типа
select a.*
, (select * from b
where a.id=b.parent_id
FOR XML AUTO, ELEMENTS,  type) b
)
from
table a
FOR XML AUTO, ELEMENTS, XMLSCHEMA 

Так не работает
5 май 18, 20:05    [21389889]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31371
uaggster
Имеется N таблиц, связанных через foreign keys 1-ко-многим, с единственным корнем.

uaggster
alexeyvg, гм, а почему join?
Я с помощью подзапросов делаю.
Какой то непонятный у вас запрос.
Вам нужно в будущей схеме просто связать таблицы, корневую с остальными, вот так и пишите:
select *
from корень
  join таблица1 on ...
  join таблица2 on ...
  ...
  join таблицаN on ...
FOR XML AUTO, ELEMENTS, XMLSCHEMA
5 май 18, 22:13    [21390040]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли создать xsd схему запросом?  [new]
aleks222
Member

Откуда:
Сообщений: 985
uaggster
alexeyvg, гм, а почему join?
Я с помощью подзапросов делаю.
Типа
select a.*
, (select * from b
where a.id=b.parent_id
FOR XML AUTO, ELEMENTS,  type) b
)
from
table a
FOR XML AUTO, ELEMENTS, XMLSCHEMA 

Так не работает


Если почитать хелп - там ясно написано со вложенными запросами for xml "так не работает".
6 май 18, 06:13    [21390269]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить