在Oracle中,我可以这样做:
INSERT INTO myTable VALUES ('someValue',SYSTIMESTAMP);
这会在myTable中插入两个值,其中一个是基于数据库服务器时间的时间戳。
对于MongoDB(通过Java驱动程序)我试过这个:
myDoc.put("value","someValue");
myDoc.put("timestamp", new Date());
myCollection.insert(myDoc);
但是这会根据客户端计算机的时间创建时间戳,而不是数据库服务器的时间。
有没有办法让MongoDB根据数据库服务器时间对文档应用时间戳?
答案 0 :(得分:5)
游戏稍晚 - 但最近发布的mongodb有$ currentDate。
请参阅http://docs.mongodb.org/manual/reference/operator/update/currentDate/
答案 1 :(得分:0)
答案 2 :(得分:0)
看起来您可以使用 db.test.insertOne( { ts: new Timestamp() } );
让服务器在插入时生成时间戳。 https://docs.mongodb.com/manual/reference/bson-types/#timestamps