2

我是否正确理解这一点?

http://docs.datomic.com/transactions.html

您可以显式设置 :db/txInstant,覆盖交易者的时钟时间。当你这样做时,你必须选择一个不比任何现有事务更早的 :db/txInstant 值,并且不比事务处理者的时钟时间新。此功能支持初始导入现有数据

这是否意味着我不能以查询 as-of 的方式将事实添加到比上一个事务更旧的 datomic 中?

这似乎是一个巨大的限制。与其他系统交互时该怎么办?例如,我可能会从昨天获得有关订单的数据,但店员今天才有时间将其输入系统。如果今天有人输入任何事实,我将无法添加旧数据?

添加显式时间属性并在所有查询中使用它是唯一的选择吗?

4

1 回答 1

3

不幸的是,当您有一个应用程序驱动的时间概念,即您正在“现在”处理的某些事件发生的“记录”时间时,您还需要一个应用程序驱动的查询机制。查看 Datomic google 组中的一个类似线程

所以答案是肯定的,你必须明确地处理那个“记录”的时间。

于 2013-09-27T21:04:46.033 回答