ksaitoの日記

日々試したことの覚え書き

Apache Derby

Apache Derbyは、pure javaRDBMSです。
アプリケーションに組み込んだり、テスト用に使ったりすると便利そうです。

インストール

aptパッケージで簡単にインストールできます。

$ sudo aptitude install sun-java6-jdk
$ sudo aptitude install sun-javadb-client sun-javadb-core
$

設定

設定は、環境変数のみです。
ijというコマンドラインのインタフェースがあります。

$ export DERBY_HOME=/usr/share/javadb
$ export PATH=$PATH:$DERBY_HOME/bin
$ ij
ij バージョン 10.3
ij>
||< 

** テーブル作成とSQL発行
テーブルスペースは、自動的に作成されます。
>||
$ ij
ij バージョン 10.3
ij> connect 'jdbc:derby:./derbyTestDB;create=true';
ij> create table sample (id integer, name varchar(128));
0 行が挿入/更新/削除されました
ij> insert into sample values (1, 'namae');
1 行が挿入/更新/削除されました
ij> select * from sample;
ID         |NAME                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------------------
1          |namae                                                                                                                           

1 行が選択されました
ij> exit;
$ 

データベースの実態

データベース名でディレクトリが作成されます。

$ ls derbyTestDB/
log  seg0  service.properties
$

JDBC接続

pure javaだけに簡単に接続できます。

実行例

$ java -classpath .:/usr/share/javadb/lib/derby.jar -Djdbc.driver=org.apache.derby.jdbc.ClientDriver JOCLPoolingDriverExample "jdbc:derby:/tmp/testdb;create=true" "SELECT * from SYS.SYSCHECKS"
Creating connection.
Creating statement.
Executing statement.
Results:
$