2010年6月29日火曜日

JavaでメモリDBを簡単に構築する

メモリDBをDerbyというオープンソースを利用すれば簡単に利用できる。
あまりの簡単さにびっくりしてしまった。

まずは、ソフトをダウンロード。
http://db.apache.org/derby/

binフォルダにPATHを張り

ijと打つとコマンドラインDBが作成できる。

 java -jar derbyrun.jar ij

ij version 10.5
ij> connect 'jdbc:derby:memory:MyDB;create=true';
ij> create table my_table(x int);
0 rows inserted/updated/deleted
ij> insert into my_table values 1, 2, 3;
3 rows inserted/updated/deleted
ij> exit;

ちなみに
'jdbc:derby:MyDB;create=true';

と書くと普通にファイルのDBができる。

これをJavaプログラムで書くと
下記に書いてあるやつをちょっと変更して
http://db.apache.org/derby/docs/10.6/getstart/getstartderby.pdf

こんな感じ。
String driver = "org.apache.derby.jdbc.EmbeddedDriver";
String dbName="jdbcDemoDB";
String connectionURL = "jdbc:derby:memory:" + dbName + ";create=true";
...
String createString = "CREATE TABLE WISH_LIST "
+ "(WISH_ID INT NOT NULL GENERATED ALWAYS AS IDENTITY "
...
+ " WISH_ITEM VARCHAR(32) NOT NULL) " ;

必要なファイルは、derby.jarのみ。これでJavaプログラム内にのメモリデータベースが
できる感じです。

これは、非常に便利だなと思った。

0 件のコメント: