2013-12-06 1 views
1

Я попытался импортировать форматированный json-файл в mongodb. но всегда говорится, что не может вставитьКак импортировать форматированный 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 
+2

Это не может быть отформатирована. Каждый документ должен содержать только одну строку. – WiredPrairie

ответ

0

Вы проблема заключается в том, что это не является действительным документом в формате JSON.

Если у вас есть такие сомнения, перейдите к JSON editor и вставьте его. На линии 9 есть ошибка, и это означает, что вы должны поставить там "a". То же самое с grade c

+0

Я исправляю это, но это не тот случай – Silva

1

попробуйте использовать

mongoimport -d DATABASE_NAME -c COLLECTION_NAME --file YOUR_JSON_FILE --jsonArray 

как команда импорта вместо.

@see: Mongodb Mongoimport too large: Failure parsing errors

+0

Это была моя проблема. добавление флага '--jsonArray' в конце дела сделало трюк – davidpm4

0

У меня была аналогичная проблема электронной решить эту изменение де локаль.

Выполнить эту команду для изменения локали Dpkg-переконфигурировать локали

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