Soy nuevo en MongoDB. Después de instalar MongoDB en Windows, estoy tratando de insertar un archivo json simple usando el siguiente comando:
C:\>mongodb\bin\mongoimport --db test --collection docs < example2.json
Estoy teniendo el siguiente error:
connected to: 127.0.0.1
Fri Oct 18 09:05:43.749 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Field name expected: offset:43
Fri Oct 18 09:05:43.750
Fri Oct 18 09:05:43.750 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Expecting '{': offset:0
Fri Oct 18 09:05:43.751
Fri Oct 18 09:05:43.751 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Field name expected: offset:42
Fri Oct 18 09:05:43.751
Fri Oct 18 09:05:43.751 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Expecting '{': offset:0
Fri Oct 18 09:05:43.751
Fri Oct 18 09:05:43.752 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Field name expected: offset:44
Fri Oct 18 09:05:43.752
Fri Oct 18 09:05:43.752 exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Expecting '{': offset:0
Fri Oct 18 09:05:43.752
Fri Oct 18 09:05:43.752 check 0 0
Fri Oct 18 09:05:43.752 imported 0 objects
Fri Oct 18 09:05:43.752 ERROR: encountered 6 error(s)s
ejemplo2.json
{"FirstName": "Bruce", "LastName": "Wayne",
"Email": "[email protected]"}
{"FirstName": "Lucius", "LastName": "Fox",
"Email": "[email protected]"}
{"FirstName": "Dick", "LastName": "Grayson",
"Email": "[email protected]"}
¿Qué debo hacer para importar un nuevo archivo json a mongodb?
Respuestas:
Utilizar
Probablemente se esté estropeando por los caracteres de nueva línea.
fuente
El siguiente comando funcionó para mí
cuando eliminé el carácter de nueva línea adicional antes del
Email
atributo en cada uno de los documentos.ejemplo2.json
{"FirstName": "Bruce", "LastName": "Wayne", "Email": "[email protected]"} {"FirstName": "Lucius", "LastName": "Fox", "Email": "[email protected]"} {"FirstName": "Dick", "LastName": "Grayson", "Email": "[email protected]"}
fuente
Esto funcionó para mí - (de mongo shell)
var file = cat('./new.json'); # file name use testdb # db name var o = JSON.parse(file); # convert string to JSON db.forms.insert(o) # collection name
fuente
Utilice el siguiente comando al importar el archivo JSON
fuente
las siguientes dos formas funcionan bien:
C:\>mongodb\bin\mongoimport --jsonArray -d test -c docs --file example2.json C:\>mongodb\bin\mongoimport --jsonArray -d test -c docs < example2.json
si las colecciones están bajo un usuario específico, puede usar
-u -p --authenticationDatabase
fuente
fuente
Esta solución es aplicable a la máquina Windows.
MongoDB necesita un directorio de datos para almacenar datos. La ruta predeterminada es
C:\data\db
. En caso de que no tenga el directorio de datos, cree uno en su unidad C :. (PD: data \ db significa que hay un directorio llamado 'db' dentro del directorio 'data')Coloque el JSON que desea importar en este camino:
C:\data\db\
.Abra el símbolo del sistema y escriba el siguiente comando
mongoimport --db databaseName --collections collectionName --file fileName.json --type json --batchSize 1
Aquí,
fuente
En MS Windows, el comando mongoimport debe ejecutarse en un símbolo del sistema de Windows normal, no desde el símbolo del sistema mongodb.
fuente
Me pasó hace un par de semanas. La versión de mongoimport era demasiado antigua. Una vez que actualicé a la última versión, se ejecutó correctamente e importó todos los documentos.
Referencia: http://docs.mongodb.org/master/tutorial/install-mongodb-on-ubuntu/?_ga=1.11365492.1588529687.1434379875
fuente
En MongoDB Para insertar datos de la matriz Json desde un archivo (desde una ubicación particular desde un sistema / pc) usando el comando mongo shell. Mientras se ejecuta el siguiente comando, el comando debe estar en una sola línea.
Archivo JSON: card_type_authorization.json
[{ "code": "visa", "position": 1, "description": "Visa", "isVertualCard": false, "comments": "" },{ "code": "mastercard", "position": 2, "description": "Mastercard", "isVertualCard": false, "comments": "" }]
fuente
Abra el símbolo del sistema por separado y verifique:
C: \ mongodb \ bin \ mongoimport --db nombre_bd --colección nombre_colección <nombre_archivo.json
fuente