Как создать базу данных из схемы XSD и импортировать данные XML

У меня есть сложная схема XSD и сотни XML-файлов, соответствующих схеме.

Как я автоматизирую создание связанных таблиц SQL Server для хранения данных XML?

Я считал создание классами C# из схемы XSD с помощью инструмента xsd.exe и позволяя чему-то как Дозвуковая фигура, как сделать солнечную базу данных из него, но не уверенной, если это - лучший способ приблизиться к нему.

Кому-либо удалось изящно импортировать файлы XSD в SQL Server?

Подобный вопрос с хорошими ответами: Как я могу создать таблицы базы данных из файлов XSD?

7
задан Community 23 May 2017 в 12:16
поделиться

2 ответа

Я предлагаю вам использовать службы интеграции SQL Server, которые поставляются с SQL Server 2008 или 2005 (или службы преобразования данных, если вы застряли с 2000).

К сожалению, он не поставляется с бесплатной версией SQL Server «Экспресс», однако выпуск SQL Server Developer можно приобрести за <100 долларов США, который имеет полную функциональность SQL Server Standard и будет соответствовать вашим потребностям.

SSIS - это большая тема, и я не собираюсь вдаваться в подробности здесь, а в основном вы:

  • Создайте новый проект SSIS с помощью BIDS (Business Intelligence Development Studio, модифицированная Visual Studio, которая поставляется с SSIS)
  • Перетащите новую задачу потока данных на поверхность потока управления, затем щелкните вкладку потока данных.
  • Перетащите «источник XML» из панели инструментов на панель потока данных, а затем настройте расположение файлов XSD и XML.
  • Перетащите адресат данных ADO.NET из набора инструментов в поток данных и соедините один из выходов источника XML со входом назначения ADO.NET. Если вы хотите создать новую таблицу на основе данных, выводимых из схемы xml, а не использовать существующую, нажмите «Создать» при указании параметров диспетчера подключений в пункте назначения ADO.NET, и она сгенерирует и выполнит соответствующую таблицу создания. утверждение. Повторите это для любых других выходных данных из источника XML (будет один для каждой логической плоской таблицы, сгенерированной из схемы).

Вам, скорее всего, потребуется сначала использовать другие объекты преобразования данных, чтобы преобразовать данные перед их загрузкой на сервер SQL, но это общая суть.Если вам нужно запустить процесс для большого количества файлов XML, вы можете поместить задачу в цикл управления и использовать переменную для установки местоположения файла XML.

Документация MS по использованию источника XML в SSIS находится здесь: http://msdn.microsoft.com/en-us/library/ms140277 (v = SQL.100) .aspx

10
ответ дан 6 December 2019 в 14:02
поделиться

Только что нашел XSD2DB на Sourceforge , согласно сайту:

XSD2DB - это инструмент командной строки, написанный на C #, который будет читать файл схемы набора данных, совместимый с Microsoft ADO.NET (XSD) и сгенерируйте базу данных.

Проверяю.

5
ответ дан 6 December 2019 в 14:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: