如何将格式化的json文件导入mongodb?

时间:2013-12-06 07:06:45

标签: json mongodb mongoimport

我尝试将格式化的json文件导入mongodb。但总是说不能插入

{
  "marks": [
    {
      "class": {
        "className": "A"
      },
      "subject": "maths",
      "score": 43,
      "grade": "a"
    },
    {
      "class": {
        "className": "B"
      },
      "subject": "maths",
      "score": 34,
      "grade": "c"
    }
  ]
}

这是什么原因。我使用了命令mongoimport --db sss --collection bbv --file a.json,错误信息是

exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Expecting '{': offset:0

4 个答案:

答案 0 :(得分:1)

尝试使用

mongoimport -d DATABASE_NAME -c COLLECTION_NAME --file YOUR_JSON_FILE --jsonArray
而不是

作为导入命令。

@see:Mongodb Mongoimport too large: Failure parsing errors

答案 1 :(得分:0)

问题是这不是有效的JSON文档。

如果你有这样的疑问,请转到JSON editor并粘贴它。它在第9行有错误,这意味着您必须将"a"放在那里。 grade c

也是如此

答案 2 :(得分:0)

我有一个类似的问题,解决这个改变de locale。

运行此命令以更改区域设置 dpkg-reconfigure locales

答案 3 :(得分:0)

json文件没问题,但问题是要将它导入MongoDB,它应该只能在一行文档中。 @WiredPrairie在这篇文章中对此进行了评论:

文件 a.json

{"marks": [{"class": {"className": "A"}, "subject": "maths", "score": 43, "grade": "a"}, {"class": {"className": "B"}, "subject": "maths", "score": 34, "grade": "c"} ] }

命令 mongoimport

$ mongoimport --db sss --collection bbv --file a.json

enter image description here

Robomongo 的结果:

enter image description here