我正在移植从MySQL到Mongo DB的文章表。据我所知,Mongo生成的_id字段在某处具有创建时间,可以提取或者可以查询它。因此,我想用它来创建MySQL的created_time INT时间戳。有没有办法在移动我的数据时为Mongo生成一个_id,它会在单独的字段中为我的记录设置时间戳?
答案 0 :(得分:2)
是的,这是可能的。例如,在C#驱动程序中,有ObjectId
的构造函数,您可以在其中传入时间戳,请参阅this source file。最简单的方法是使用辅助方法GenerateNewId
:
var id = ObjectId.GenerateNewId(new DateTime(2012, 01, 01));
我不知道您使用的是哪种编程语言,以及该语言的驱动程序是否支持此功能,但我想这是广泛可用的。
编辑:This question包含Java,mongoose和python的代码,答案包含PHP的代码。 “广泛可用”似乎是一个错误的假设,例如,它尚未在PHP驱动程序中实现。