MongoDB Compass插入含ObjectId与ISODate的文档报错求助
问题原因及解决办法
核心原因
MongoDB Compass的文档插入界面要求输入标准JSON格式内容,而你使用的ISODate()和ObjectId()是MongoDB Shell专属的语法构造器,不属于标准JSON的语法规范,因此会被判定为文档错误,导致插入失败。
解决步骤
日期字段处理:将
ISODate("2022-03-15T10:00:00Z")替换为标准ISO 8601格式的字符串,Compass会自动将其解析为Date类型存储:"date": "2022-03-15T10:00:00Z"关联ID字段处理:将
ObjectId("6412f4e691b08789204bc17a")替换为纯字符串形式的ID值;若需要将该字段存储为ObjectId类型,可在Compass插入界面手动指定该字段的类型为ObjectId:"author": "6412f4e691b08789204bc17a"
修正后的完整插入文档
{ "title": "xxxx", "text": "...", "date": "2022-03-15T10:00:00Z", "author": "6412f4e691b08789204bc17a", "tags": [ {"tag": "COVID-19"}, {"tag": "Vacunas"} ] }
内容的提问来源于stack exchange,提问作者Carlos
相关产品推荐
相关产品推荐

