さて、はじめにXMLファイルを使ったimport,exportをやってみます。 サンプルのテーブル定義 †以下のテーブルに対して、import/exportをやってみます。 mysql> describe webdb1.rss1; +---------+------------------+------+-----+---------------------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+------------------+------+-----+---------------------+-------+ | ID | varchar(4) | NO | PRI | NULL | | | VERSION | int(10) unsigned | NO | | 0 | | | TITLE | varchar(256) | YES | | NULL | | | LINK | varchar(256) | YES | | NULL | | | DATE1 | datetime | NO | | 0000-00-00 00:00:00 | | +---------+------------------+------+-----+---------------------+-------+ 5 rows in set (0.00 sec) mysql> データをXMLからインポートする †このテーブルにデータを入れるために以下のようなデータをxmlで作成しました。 <?xml version='1.0' encoding='UTF-8'?> <dataset> <RSS1 ID="001" VERSION="0" TITLE="タイトル1" LINK="http://www.masatom.in/pukiwiki/" DATE1="2006-09-13"/> <RSS1 ID="002" VERSION="0" TITLE="タイトル2" LINK="http://www.masatom.in/pukiwiki/" DATE1="2006-09-13"/> <RSS1 ID="003" VERSION="0" TITLE="タイトル3" LINK="http://www.masatom.in/pukiwiki/" DATE1="2006-09-13"/> <RSS1 ID="004" VERSION="0" TITLE="タイトル4" LINK="http://www.masatom.in/pukiwiki/" DATE1="2006-09-13"/> </dataset> このデータをテーブルに挿入するには以下のようなAntタスクを実行します。 <target name="dbImport"> <dbunit schema="webdb1" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.10.5/webdb1?useUnicode=true &characterEncoding=ujis" userid="xxxxx" password="xxxxx"> <operation type="INSERT" src="import.xml" /> </dbunit> </target> 実行後、select下結果は以下の通り。 mysql> select * from webdb1.rss1; +-----+---------+------------+---------------------------------+---------------------+ | ID | VERSION | TITLE | LINK | DATE1 | +-----+---------+------------+---------------------------------+---------------------+ | 001 | 0 | タイトル1 | http://www.masatom.in/pukiwiki/ | 2006-09-13 00:00:00 | | 002 | 0 | タイトル2 | http://www.masatom.in/pukiwiki/ | 2006-09-13 00:00:00 | | 003 | 0 | タイトル3 | http://www.masatom.in/pukiwiki/ | 2006-09-13 00:00:00 | | 004 | 0 | タイトル4 | http://www.masatom.in/pukiwiki/ | 2006-09-13 00:00:00 | +-----+---------+------------+---------------------------------+---------------------+ 4 rows in set (0.00 sec) mysql> んー簡単ですね。 DBUnitのAntタスクの詳細は を参照ください。 データをXMLでエクスポートする †さて、いきなり出てきたimport.xmlですが、このフォーマットで、テーブルからexportすることもできます。以下のタスクを実行します。 <target name="dbExport"> <dbunit schema="webdb1" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.10.5/webdb1?useUnicode=true &characterEncoding=ujis" userid="xxxx" password="xxxx"> <export dest="export.xml" > <table name="rss1" /><-指定しないと、スキーマ内の全テーブルが対象 </export> </dbunit> </target> いやあ便利です。なんかすごいですね。 次は、Java/DBUnit/ExcelシートでImport,Exportする をやってみます。 この記事は 現在のアクセス:17107 |