当前位置: 首页 > 面试题库 >

如何在mongo中插入带日期的文档?

鲜于德泽
2023-03-14
问题内容

我们正在尝试插入带有当前日期作为字段的文档。我们使用mongodb的eclipse插件编写Java。我们想要执行Date()mongo命令以从mongo而不是从java获取日期。

如何执行此mongo查询?

db.example.insert({"date":new Date()})

我在预览问题中找到了这个问题,但是答案没有帮助

链接


问题答案:

标准驱动程序采用java.util.date类型并将其序列化为BSON日期。所以用一个集合对象为“
example”

Date now = new Date();

BasicDBObject timeNow = new BasicDBObject("date", now);
example.insert(timeNow);

如果您正在寻找一种在操作中使用“服务器”时间的方法,则有一个
$currentDate

运算符,但是它与“更新”一起使用,因此您需要“更新”操作:

 BasicDBObject query = new BasicDBObect();
 BasicDBObject update = new BasicDBObject("$currentDate",
     new BasicDBObject("date", true)
 );

 example.update(query,update,true,false);

由于这实际上是一条更新语句,因此,如果您打算将其仅作为插入内容,则需要注意不要与任何文档实际匹配。因此,最好确保您的“查询”包含唯一信息,例如新生成的信息_id或同样唯一的信息。



 类似资料:
  • 我想以我用命令设置的格式传入日期。这是我到目前为止所尝试的。不理解无效月份错误。我在用10克。 数据库时区为UTC 我设置了会话时区和日期格式

  • 我在Netbeans IDE中用JDBC oracle数据库做一个Java项目,我需要在数据库中插入日期和时间,它的格式是11/16/2013 10:30。我把我的代码附在下面。 在DBConnector中插入代码 按钮单击事件 Logger.GetLogger(CabCancellationUI.Class.GetName()).Log(Level.Severe,null,ex);}}捕获(Ex

  • 我在将空值插入MySQL表的日期字段时遇到问题。 下面是插入查询: s1和s2列采用字符串值,d1和d2列采用日期。当我只使用字符串字段运行这个查询时,没有问题。 日期值可以设置为空,所以我没有在查询中包含引号,而是在前面将它们添加到变量中。这是我用来设置日期值的php代码: 当日期值全部设置时,记录将被正确插入。但是,当其中一个日期为空时,将不插入任何内容。 为什么我不能像这样在MySQL中插入

  • 问题内容: 假设我插入了文档。 现在,假设我要添加一个字段并对其进行更新。我怎么做?这似乎不起作用..... 问题答案: 在pymongo中,您可以使用以下内容 进行更新:如果在数据库中未找到该帖子,则将插入Upsert参数而不是更新。 文档可在mongodb网站上找到。 UPDATE 对于版本> 3,请使用 update_one 而不是 update :

  • 我正在我的ubuntu 18.04机器上运行mongo shell。我正在集合中插入文档 我尝试创建多个键,如:'db。Pricing.insert({key1:{key1a: value}, key2:{key2a: value},{key2b: value}, key3:{key3a: value}})' ”“db。定价插入({图像:{“在书中使用”:100},纸张:{“在书中”:0-20},

  • insertDate(int $row, int $column, int $timestamp[, string $dateFormat = 'yyyy-mm-dd hh:mm:ss', resource $formatHandler]) int $row $excel = new \Vtiful\Kernel\Excel($config); ​ $dateFile = $excel->fil