Как использовать mongoimport для импорта CSV - PullRequest
172 голосов
/ 14 января 2011

Попытка импортировать CSV с контактной информацией:

Name,Address,City,State,ZIP  
Jane Doe,123 Main St,Whereverville,CA,90210  
John Doe,555 Broadway Ave,New York,NY,10010 

Запуск этого, похоже, не добавляет никаких документов в базу данных:

$ mongoimport -d mydb -c things --type csv --file locations.csv --headerline

Трассировка говорит imported 1 objects, но при запуске оболочки Mongo и запуске db.things.find() новые документы не отображаются.

Чего мне не хватает?

Ответы [ 18 ]

0 голосов
/ 25 мая 2019

Моим требованием было импортировать .csv (with no headline) в удаленный MongoDB экземпляр.Для mongoimport v3.0.7 ниже команда работала у меня:

mongoimport -h <host>:<port> -u <db-user> -p <db-password>  -d <database-name> -c <collection-name> --file <csv file location> --fields <name of the columns(comma seperated) in csv> --type csv

Например:

mongoimport -h 1234.mlab.com:61486 -u arpitaggarwal -p password  -d my-database -c employees --file employees.csv --fields name,email --type csv

Ниже приведен скриншот того, как это выглядит после импорта:

enter image description here

, где name и email - столбцы в файле .csv.

0 голосов
/ 04 сентября 2018

Обмен для будущих читателей:

В нашем случае нам нужно было добавить параметр host, чтобы он работал

mongoimport -h mongodb://someMongoDBhostUrl:somePORTrunningMongoDB/someDB -d someDB -c someCollection -u someUserName -p somePassword --file someCSVFile.csv --type csv --headerline --host=127.0.0.1
0 голосов
/ 22 августа 2018

Странно никто не упомянул --uri флаг:

mongoimport --uri connectionString -c questions --type csv --file questions.csv --headerline 
0 голосов
/ 16 мая 2018
1]We can save xsl as .csv file
2] Got to MongoDB bin pathon cmd - > cd D:\Arkay\soft\MongoDB\bin
3] Run below command
> mongoimport.exe -d dbname -c collectionname --type csv --file "D:\Arkay\test.csv" --headerline
4] Verify on Mongo side using below coomand.
>db.collectioname.find().pretty().limit(1)
0 голосов
/ 10 ноября 2011

Просто используйте это после выполнения mongoimport

Он вернет количество импортированных объектов

use db
db.collectionname.find().count()

вернет количество объектов.

0 голосов
/ 19 ноября 2017

mongoimport -d test -c test --type csv --file SampleCSVFile_119kb.csv --headerline

проверить данные сбора: -

var collections = db.getCollectionNames();

for(var i = 0; i< collections.length; i++)
{    
   print('Collection: ' + collections[i]);
   // print the name of each collection
   
   db.getCollection(collections[i]).find().forEach(printjson);
   
   //and then print the json of each of its elements
}
0 голосов
/ 19 июня 2014

C: \ wamp \ mongodb \ bin> mongoexport --db proj_mmm - коллекция предложений --csv --fieldFile offerings_fields.txt --out offerings.csv

0 голосов
/ 06 апреля 2016

использование:

mongoimport -d 'database_name' -c 'collection_name' --type csv --headerline --file filepath/file_name.csv
...