You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在MongoDB Compass中插入文档时如何自动获取系统当前日期?

在MongoDB Compass中自动插入当前日期的解决方案

问题原因

MongoDB Compass的文档输入框仅支持纯JSON格式,不允许直接执行JavaScript表达式(比如new Date()),这就是直接写new Date()会报错的核心原因。另外你尝试的几种方法失效的具体原因:

  • new Date().toISOString() 会被当成普通字符串,无法被识别为Date类型
  • 手动拼接的日期字符串同样是字符串类型,MongoDB不会自动转换为Date
  • $currentDate 是更新操作符,仅适用于update/updateOne等更新场景,插入文档时不生效

可行解决方案

1. 使用Compass内置的动态日期值

在Compass的「插入文档」界面:

  • 点击要添加日期的字段旁边的下拉图标(或「添加字段」后选择类型)
  • 选择「Current Date」选项,Compass会自动生成符合MongoDB要求的ISODate格式值,示例:
{
  "Last Modified Date": ISODate("2024-05-20T12:34:56.789Z")
}

2. 手动输入ISO格式日期字符串

直接输入符合ISO 8601标准的日期字符串,MongoDB会自动将其解析为Date类型:

{
  "_id": { "$oid": "xxxx" },
  "Last Modified Date": "2024-05-20T12:34:56.789Z"
}

你可以通过浏览器控制台执行new Date().toISOString()生成标准字符串,再复制粘贴到Compass中。

3. 使用Compass的MongoSH Shell执行插入命令

切换到Compass的「MongoSH Shell」标签页,直接执行和MongoDB Shell相同的插入命令,完全支持new Date():

db.myCollection.insertOne({
  "Last Modified Date": new Date()
});

内容的提问来源于stack exchange,提问作者geopark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 01:42:07