Автоматизированный способ преобразования XML файлов в базу данных SQL?
У нас есть куча XML файлов, следуя схеме, которая по существу представляет собой сериализованную форму базы данных:
<table1>
<column1>value</column1>
<column2>value</column2>
</table1>
<table1>
<column1>another value</column1>
<column2>another value</column2>
</table1>
...
Есть ли простой способ превратить это в базу данных SQL? Очевидно, что я могу вручную построить схему, идентифицировать все таблицы, поля и т.д., А затем написать script для ее импорта. Мне просто интересно, есть ли какие-либо инструменты, которые могли бы автоматизировать некоторые или все из этого процесса?
Ответы
Ответ 1
Для Mysql см. LOAD XML
Синтаксис Docs.
Он должен работать без какого-либо дополнительного преобразования XML для предоставленного вами XML, просто укажите формат и определите таблицу внутри базы данных из первых рук с соответствующими именами столбцов:
LOAD XML LOCAL INFILE 'table1.xml'
INTO TABLE table1
ROWS IDENTIFIED BY '<table1>';
Существует также связанный с этим вопрос:
Для Postgresql я не знаю.
Ответ 2
Если есть файл XML с двумя разными таблицами, то будет:
LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table1
LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table2
Работа
Ответ 3
Существует проект проекта CodeProject, который упрощает преобразование XML файла в SQL Script. Он использует XSLT. Возможно, вы могли бы изменить его, чтобы сгенерировать DDL.
И также посмотрите этот вопрос: Генерация SQL с использованием XML и XSLT
Ответ 4
попробуйте это
http://www.ehow.com/how_6613143_convert-xml-code-sql.html
для загрузки инструмента
http://www.xml-converter.com/