我是OODBMS系统的新手,但我在一个非常适合的新项目中使用Db4o。事情进展顺利,我非常喜欢这个概念,但我正在努力解决与开发相关的基本数据管理任务。我想定期擦除数据库中的所有类型,如何在不实际编写代码的方法的情况下执行此操作,然后运行我的应用程序?另外,我如何解决“架构”更改。如果我更改了某个特定类的定义,Db4o是否为它创建了一个新的“表”,或者它是否只用一组不同的成员将它识别为相同的类型?
顺便说一句......我在.NET 3.5中
答案 0 :(得分:2)
我通常只在需要时编写开发代码(直到应用程序可以自己处理这些问题)。你会很高兴知道ObjectManager现在是免费的,所以你可能需要'查看它http://developer.db4o.com/blogs/product_news/archive/2009/01/25/object-manager-enterprise-now-free-to-all-developers.aspx
应通过向新字段添加默认值来解决架构更改。 Db4o不会为它“创建一个新表”,而只是“添加一个新列”。更改类定义后从db检索的对象将具有新属性,但它将为null - 因此最好为其添加默认值。这样,所有对象在首次使用时都会自行排序。删除的字段将被忽略。