Ich bin neu bei MongoDB. Nach der Installation von MongoDB unter Windows versuche ich, eine einfache JSON-Datei mit dem folgenden Befehl einzufügen:
C:\>mongodb\bin\mongoimport --db test --collection docs < example2.json
Ich erhalte die folgende Fehlermeldung:
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
example2.json
{"FirstName": "Bruce", "LastName": "Wayne",
"Email": "[email protected]"}
{"FirstName": "Lucius", "LastName": "Fox",
"Email": "[email protected]"}
{"FirstName": "Dick", "LastName": "Grayson",
"Email": "[email protected]"}
Was muss ich tun, um eine neue JSON-Datei in Mongodb zu importieren?
Antworten:
Verwenden
Es ist wahrscheinlich wegen der Zeilenumbrüche durcheinander.
quelle
Der folgende Befehl hat bei mir funktioniert
als ich das zusätzliche Zeilenumbruchzeichen vor dem
Email
Attribut in jedem der Dokumente entfernte.example2.json
{"FirstName": "Bruce", "LastName": "Wayne", "Email": "[email protected]"} {"FirstName": "Lucius", "LastName": "Fox", "Email": "[email protected]"} {"FirstName": "Dick", "LastName": "Grayson", "Email": "[email protected]"}
quelle
Das hat bei mir funktioniert - (von 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
quelle
Verwenden Sie beim Importieren der JSON-Datei den folgenden Befehl
quelle
Die folgenden zwei Möglichkeiten funktionieren gut:
C:\>mongodb\bin\mongoimport --jsonArray -d test -c docs --file example2.json C:\>mongodb\bin\mongoimport --jsonArray -d test -c docs < example2.json
Wenn sich die Sammlungen unter einem bestimmten Benutzer befinden, können Sie sie verwenden
-u -p --authenticationDatabase
quelle
quelle
Diese Lösung gilt für Windows-Computer.
MongoDB benötigt ein Datenverzeichnis zum Speichern von Daten. Standardpfad ist
C:\data\db
. Falls Sie das Datenverzeichnis nicht haben, erstellen Sie eines in Ihrem Laufwerk C:. (PS: data \ db bedeutet, dass sich im Verzeichnis 'data' ein Verzeichnis mit dem Namen 'db' befindet.)Platzieren Sie den zu importierenden JSON in diesem Pfad :
C:\data\db\
.Öffnen Sie die Eingabeaufforderung und geben Sie den folgenden Befehl ein
mongoimport --db databaseName --collections collectionName --file fileName.json --type json --batchSize 1
Hier,
quelle
In MS Windows muss der Befehl mongoimport an einer normalen Windows-Eingabeaufforderung ausgeführt werden, nicht an der Eingabeaufforderung von mongodb.
quelle
Es ist mir vor ein paar Wochen passiert. Die Version von Mongoimport war zu alt. Sobald ich auf die neueste Version aktualisiert habe, lief es erfolgreich und importierte alle Dokumente.
Referenz: http://docs.mongodb.org/master/tutorial/install-mongodb-on-ubuntu/?_ga=1.11365492.1588529687.1434379875
quelle
In MongoDB Zum Einfügen von Json-Array-Daten aus einer Datei (von einem bestimmten Speicherort eines Systems / PCs) mit dem Befehl mongo shell. Während der Ausführung unter dem Befehl sollte der Befehl in einer Zeile stehen.
JSON-Datei: card_type_authorization.json
[{ "code": "visa", "position": 1, "description": "Visa", "isVertualCard": false, "comments": "" },{ "code": "mastercard", "position": 2, "description": "Mastercard", "isVertualCard": false, "comments": "" }]
quelle
Öffnen Sie die Eingabeaufforderung separat und überprüfen Sie:
C: \ mongodb \ bin \ mongoimport --db Datenbankname - Sammlung Sammlungsname <Dateiname.json
quelle