web-dev-qa-db-ja.com

XMLファイルをSQLデータベースに変換する自動化された方法?

基本的にシリアル化されたデータベース形式であるスキーマに従って、多数のXMLファイルがあります。

<table1>
   <column1>value</column1>
   <column2>value</column2>
</table1>
<table1>
   <column1>another value</column1>
   <column2>another value</column2>
</table1>
...

それをSQLデータベースに変える簡単な方法はありますか?明らかに、スキーマを手動で構築し、すべてのテーブル、フィールドなどを特定し、それをインポートするスクリプトを作成できます。そのプロセスの一部またはすべてを自動化できるツールがあるのだろうか?

15
Steve Bennett

Mysqlについては LOAD XML構文ドキュメント

提供したXMLに追加のXML変換を行わなくても機能するはずです。フォーマットを指定し、一致する列名でデータベース内のテーブルを直接定義するだけです。

LOAD XML LOCAL INFILE 'table1.xml'
    INTO TABLE table1
    ROWS IDENTIFIED BY '<table1>';

関連する質問もあります:

Postgresqlについては知りません。

13
hakre

2つの異なるテーブルを持つXMLファイルがある場合:

LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table1 
LOAD XML LOCAL INFILE 'table1.xml' INTO TABLE table2

作業

1
Well-Wisher

CodeProjectのプロジェクト があり、XMLファイルをSQLスクリプトに簡単に変換できます。 XSLTを使用します。おそらくDDLを生成するように変更することもできます。

また、この質問も参照してください。 XMLとXSLTを使用したSQLの生成

1
Preet Sangha
0
SRIRAM