db4o - データの挿入と検索

  • まず、挿入するデータの型を定義する。
public class Entity {
  private string name;
  public string Name {
    get { return name; }
    set { name = value; }
  }
}

データの挿入

  1. Db4oクラスのOpenFileメソッドにデータベースファイル名を指定して、ObjectContainerオブジェクトを取得する。
  2. あとはObjectContainerオブジェクトのSetメソッドで、挿入するデータのインスタンスを指定する。
using(ObjectContainer db = Db4o.OpenFile("Test.db")) {
  Entity obj = new Entity();
  obj.Name = "Hoge";

  db.Set(obj);    // これだけ!?
}

データの検索

  1. まずObjectContainerオブジェクトを取得する。
  2. あとは、Queryメソッドで型パラメータを指定して、引数にPredicateデリゲートで検索条件を指定する。
using(ObjectContainer db = Db4o.OpenFile("Test.db")) {
  IList<Entity> entities = db.Query<Entity>(delegate(Entity obj) {
    return obj.Name.Equals("Hoge");    // 検索条件
  });
  foreach(Entity obj in entities) Console.WriteLine("Name={0}", obj.Name);
}

このぐらいだと、かなり簡単にかつ直感的に書けるみたい。

次はもうちょっと複雑なことをやってみよう。