我遗漏了什么?不管我怎么尝试,MongoDB总是给我同样的错误

u3r8eeie  于 2022-09-18  发布在  Go
关注(0)|答案(1)|浏览(294)

我正在尝试将文档插入到检查集合下的MongoDB中,但无论我尝试什么,都会收到错误!

我正在尝试的代码如下:

db.inspections.insertOne({
"_id": 20032-2020-ACME,
 certificate_number: 9998888,
 business_name: "ACME Explosives",
 date: newDate("09-05-2022"),
 result: "Business Padlocked",
 sector: "Explosive Retail Dealer-999",
 {
 "address":"number->1721" "street-> Boom Road" "city->BRONX" "zip->10463"}
 }

这是我不断收到的错误:

E  QUERY    [js] uncaught exception: SyntaxError: expected property name, got '{' :

我试图替换括号,尝试以不同的方式设置格式,尝试使用不带引号或交换引号的方法,但每次尝试都会出现相同的错误。

我怎么才能解决这个问题呢?

n3ipq98p

n3ipq98p1#

该错误实际上会告诉您哪里出了问题。您尝试插入的项目不是有效的json。

很可能你忘了在“地址”前面的{前面放一把钥匙。此外,在同一行中,您没有任何逗号来分隔键值对。

我相信你会取得更大的成功

db.inspections.insertOne({
"_id": "20032-2020-ACME",
 certificate_number: 9998888,
 business_name: "ACME Explosives",
 date: newDate("09-05-2022"),
 result: "Business Padlocked",
 sector: "Explosive Retail Dealer-999",
 address: {
    "number":"1721",
    "street":"Boom Road",
    "city":"BRONX", 
    "zip":"10463"
 }
}

address:部分才是它现在真正抱怨的。最有可能的是,它会抱怨在修复address:之后缺少逗号。或者使用->而不是:

此外,还可能需要用引号引用关键字。

编辑:我还注意到,您的原始ID可能被解释为整数减去整数减去字符串/未知变量。我不能说这可能会有什么影响,但我假设你希望它是id,作为一个字符串。为此,我在20032-2020-ACME两边加了引号

相关问题