Извлечь XML-схему из базы данных SQL 2005 - PullRequest
1 голос
/ 10 июля 2009

В Microsoft SQL Server 2005 есть возможность сохранить в базе данных в разделе «База данных -> Тип -> Коллекция схем XML» схему XML, с которой можно проверить, просматриваете ли вы базу данных в SQL Management Studio.

Что мне нужно сделать, это сохранить схему по указанному выше пути, а затем в коде извлечь эту схему, чтобы использовать ее для проверки других данных XML. Есть ли способ запросить эту схему, чтобы я мог получить текст xsd, а затем использовать его в приложении .net для проверки других XML? Мне просто нужна информация для извлечения или запроса теста xsd из базы данных.

Ответы [ 2 ]

1 голос
/ 10 июля 2009

Проведя дополнительное исследование, я обнаружил, что вы можете запросить xsd из базы данных, используя вызов xml_schema_namespace из сервера sql.

SELECT xml_schema_namespace(N'',N'OurXmlSchemaNameOnDatabase')

Это запросит xsd и вернет его. Дополнительную информацию можно найти здесь .

1 голос
/ 10 июля 2009

Я не знаю, как вытащить его обратно, но вы ошибаетесь по поводу цели. Цель не для SSMS. Он предназначен для проверки XML, хранящегося в столбце XML в базе данных, а также для создания индексов XML и для поддержки XQuery.

Тем не менее, я уверен, что вы можете получить схему, используя SMO, и, возможно, существует запрос к системным таблицам, который ее возвращает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...