我们有一堆XML文件,遵循一个基本上是序列化数据库形式的模式:
<table1>
<column1>value</column1>
<column2>value</column2>
</table1>
<table1>
<column1>another value</column1>
<column2>another value</column2>
</table1>
...
是否有一种非常简单的方法可以将其转换为SQL数据库?显然,我可以手动构建模式,识别所有表,字段等,然后编写一个脚本来导入它。我只是想知道是否有任何工具可以自动化部分或全部流程?
答案 0 :(得分:13)
对于Mysql,请参阅LOAD XML
SyntaxDocs。
对于您提供的XML,它应该不需要任何额外的XML转换,只需指定格式并使用匹配的列名称直接在数据库中定义表:
LOAD XML LOCAL INFILE 'table1.xml'
INTO TABLE table1
ROWS IDENTIFIED BY '<table1>';
还有一个相关问题:
对于Postgresql我不知道。
答案 1 :(得分:1)
有一个project on CodeProject可以很容易地将XML文件转换为SQL Script。它使用XSLT。您可以修改它以生成DDL。
并且也看到了这个问题:Generating SQL using XML and XSLT
答案 2 :(得分:1)
如果有包含2个不同表的XML文件,则会:
LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table1
LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table2
工作
答案 3 :(得分:0)