DB2のコントロールセンター等で、「インポート/エクスポート」をしようとすると、DBデータを特殊なファイルで保管する形になります。私はこれがとても気に入りません。
ので、[[MySQL:http://dev.mysql.com/]]の [[mysqldump:http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html]] のようなツールがあったらいいな、と思ってしまいました。
[[mssqldump(MS SQL Server版)>C#/mssqldump]]もよろしく (^^;;
* db2dump [#b7ff4432]
- 実行ファイル &ref(http://jomura.net/archive/2009/db2dump-bin.zip);
- ソースファイル &ref(http://jomura.net/archive/2009/db2dump-src.zip);
- 実行ファイル &ref(http://jomura.net/archive/2012/db2dump-bin.zip);
- ソースファイル &ref(http://jomura.net/archive/2012/db2dump-src.zip);
- DBに格納されているデータを元に、それを登録する為のSQL文(INSERT文)を標準出力する。
-- コマンドライン引数は、出力対象のテーブル名。引数無しの場合は、全てのテーブルを出力する。
Usage: db2dump [Option ...] [TableName ...]
Options :
-h, --help この説明を表示する。
-c, --complete-insert INSERT文にカラム名の指定も含める。
-x, --xml XML形式で出力する。
- DB接続情報は、db2dump.propertiesファイルに記述する。
-- db2dump.propertiesファイルはjarファイルと同じフォルダに配置すること。
- binに同梱のbatファイルをjarファイルと同じフォルダに配置し、環境変数PATHを通しておくと便利かも。
- 配置パスに日本語が含まれるとダメです。m(__)m (半角空白には辛うじて対応)
*** 変更履歴 [#hfcea555]
- 2010.05.10 DBスキーマをプロパティ指定可能とした。
- 2012.03.27 XML出力機能を追加した。
*** (参考) jarファイルのファイルパスをJavaコード内で取得する [#zaed90ae]
new File(System.getProperty("java.class.path")).getParent()
で十分です。