我昨天刚刚发现了伯克利数据库及其性能。我愿意在Java项目中使用它。
我想知道的是,如何获取存储在数据库中满足特定条件的所有对象。
例如,我存储了 Message(int id、字符串值、日期日期)类型的对象,我想获取过去 10 分钟的所有消息。
换句话说,这个SQL查询的等效项是什么
SELECT * FROM messages WHERE date < 2016-04-12T23:20:50.52Z
在伯克利DB。
是否可以使用伯克利数据库的API来完成,或者我应该通过编码来完成所有操作?
提前谢谢。
Berkeley DB 是一个键值存储。 如果你想做任何比通过标识符获取/设置值更复杂的事情,你将不得不做这项工作。 有一个SQL模块。 我从来没有用过它,但我不会在这个数字上放太多筹码。
像你提出的问题在SQLite中得到了更好的解决,它在引擎盖下使用了类似Berkeley DB的东西,并且(当然)支持SQL。 它还支持对格式正确的字符串进行日期算术。