我一直试图用这个
导入一个json mongoimport --upsert --db mydb --jsonArray --file AllCards.json
但我得到的是
"导入0个对象"
我得到一个包含0个元素的数据库。
使用JSON查看器加载时,正确读取了相同的JSON文件。
这是我收到的错误消息的一部分
异常:传递给mongoimport的JSON无效:代码FailedtoParse:> FailedtoParse:Excpecting' {&#39 ;: offset:0 of:
我试图导入的JSON文件有6MB,但我一直在修剪它以试图找到问题。即使有这样的内容,问题仍然存在:
{
"Air Elemental": {
"layout": "normal",
"name": "Air Elemental",
"manaCost": "{3}{U}{U}",
"cmc": 5,
"colors": ["Blue"],
"type": "Creature — Elemental",
"types": ["Creature"],
"subtypes": ["Elemental"],
"text": "Flying",
"power": "4",
"toughness": "4",
"imageName": "air elemental",
"colorIdentity": ["U"]
},
"Ancestral Recall": {
"layout": "normal",
"name": "Ancestral Recall",
"manaCost": "{U}",
"cmc": 1,
"colors": ["Blue"],
"type": "Instant",
"types": ["Instant"],
"text": "Target player draws three cards.",
"mciNumber": "1",
"imageName": "ancestral recall",
"colorIdentity": ["U"]
}
}
答案 0 :(得分:1)
jsonArray选项要求输入是JSON文档的数组,即文件中的顶级对象是数组。您输入的情况并非如此。
如果您只想要每行一个JSON文档(使用当前的mongodb版本),这是默认的mongoinport格式 - 您不需要传递任何选项来请求它。删除FrameLayout
,你应该没问题。
答案 1 :(得分:0)
我正在做mongoimport --upsert --db jason --collection contacts --file omuk.json
它工作正常。
发现它:
2016-04-05T14:34:19.305+0600 connected to: localhost
2016-04-05T14:34:19.314+0600 imported 1 document