|
さて、はじめに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する をやってみます。 この記事は 現在のアクセス:17647 |