对象数据库db4o试用记
时间:2010-06-12 来源:netlightwind
public class Student |
1、创建一个新的db4o数据库文件
IObjectContainer db = Db4oFactory.OpenFile("data.yap");
这需要使用db4o的命名空间Db4objects.Db4o
2.保存对象
Student s = new Student("hi", 30);
db.Store(s1);
3.查询对象
db4o中提供了3种查询方式,QBE, NQ, SODA。
3.1QBE
列举所有的Student:
IObjectSet result = db.QueryByExample(typeof(Student));
foreach (object obj in result)
{
Student s = obj as Student;
}
按条件搜索:
Student s = new Student();
s.Name = "hi";
IObjectSet result = db.QueryByExample(s);
3.2NQ
IList<Student> ss = db.Query<Student>(delegate(Student s)
{ return s.Name=="li"; });
foreach (Student s in ss)
{
// 处理对象s
}
3.3SODA
Db4objects.Db4o.Query.IQuery query = db.Query();
query.Constrain(typeof(Student));
//Db4objects.Db4o.Query.IConstraint constr = query.Descend("m_Name").Constrain("ha");
//query.Descend("m_Age").Constrain(55).Smaller();
//query.Descend("m_Name").OrderAscending();
IObjectSet result = query.Execute();
foreach (object obj in result)
{
Student s = obj as Student;
}
4.更新对象
搜索出所需对象后,修改对象的属性,再使用Store方法保存,即是更新。
5.删除对象
搜索出所需对象后,使用db.delete(s)删除之。