リレーショナルデータベースに更新・削除を実装した

データベースの勉強に、かわいいデータベースを実装しています。
http://d.hatena.ne.jp/nowokay/20120817#1345197962


んで、今日は雨が降っててでかけたくないなーと思ってたら、更新(update)と削除(delete)が実装できてました。


こんな感じで、クエリー結果にたいして更新をかけます。

Query.from("shohin").equalsTo("shohin_id", 7).update(new SubstOperation("price", 150));

更新操作では、SubstOperationが単純な代入で、AddOperationが加算です。


一括更新もできます。

Query.from("shohin").lessThan("price", 200).update(new AddOperation("price", 10));


削除も。

Query.from("shohin").equalsTo("shohin_id", 7).delete();


思いのほか、きれいなAPIで更新・削除が実現できました。
データ更新時の、インデックスの付け替えがめんどかった感じ。


ソースも1000行を超えて、だいぶかわいくなくなってきました。
ひよこにたとえると、7日目の、ちょっと鳥っぽくなってきた感じ。
http://www4.ocn.ne.jp/~tamago/newpage66.html
最初はまるくてかわいかったのにw


ソースはこちら
https://gist.github.com/3380142/2f9bf9ac58c02c51a07820ff0ffbb3da650e7c50