Saat menggunakan MongoDB, Anda dapat menggunakan mongoimport
untuk mengimpor dokumen ke dalam koleksi. mongoimport
adalah utilitas baris perintah yang mengimpor konten dari file Extended JSON, CSV, atau TSV. File impor bisa saja dibuat oleh mongoexport
atau utilitas ekspor lainnya.
Artikel ini menyajikan contoh mengimpor file JSON ke MongoDB.
Contoh
Misalkan kita memiliki file JSON berikut bernama pets.json
:
{ "_id" : 1, "name" : "Wag", "type" : "Dog" } { "_id" : 2, "name" : "Bark", "type" : "Dog" } { "_id" : 3, "name" : "Meow", "type" : "Cat" }
Perintah berikut mengimpor file JSON ke MongoDB:
mongoimport --db=PetHotel --file=pets.json
Dalam hal ini, saya tidak menentukan koleksi untuk mengimpornya, jadi itu membuat koleksi dengan nama file yang sama (pets
).
Periksa Hasil
Mari kita lihat koleksinya.
db.pets.find()
Hasil:
{ "_id" : 1, "name" : "Wag", "type" : "Dog" } { "_id" : 2, "name" : "Bark", "type" : "Dog" } { "_id" : 3, "name" : "Meow", "type" : "Cat" }
Kita dapat melihat bahwa dokumen diimpor seperti yang diharapkan.
Tentukan Nama Koleksi
Anda dapat menggunakan --collection
(atau -c
) parameter untuk menentukan koleksi yang akan diimpor file.
Berikut ini contoh penggunaan --collection
parameter untuk mengimpor file yang sama ke dalam koleksi yang berbeda:
mongoimport --db=PetHotel --collection=pets2 --file=pets.json
Jika koleksi belum ada, itu akan dibuat. Jika sudah ada, maka hasil impor akan bergantung pada mode yang Anda gunakan (lebih lanjut tentang ini di bawah).
Lepaskan Koleksi Sebelum Mengimpor
Anda dapat menggunakan --drop
parameter untuk menghapus koleksi yang ada dengan nama yang sama dengan yang Anda coba buat/impor.
Bayangkan kita memiliki file kedua, bernama pets2.json
, dengan dokumen berikut:
{ "_id" : 4, "name" : "Bubbles" } { "_id" : 5, "name" : "Hop", "type": "Kangaroo" }
Inilah yang terjadi jika saya mengimpor dokumen itu ke pets
koleksi menggunakan --drop
pilihan:
mongoimport --db=PetHotel --collection=pets --drop --file=pets2.json
Keluaran:
2021-01-03T15:42:25.626+1000 connected to: mongodb://localhost/ 2021-01-03T15:42:25.640+1000 dropping: PetHotel.pets 2021-01-03T15:42:25.734+1000 2 document(s) imported successfully. 0 document(s) failed to import.
Pesan tersebut memberi tahu kami bahwa koleksi telah dihapus, dan satu dokumen telah diimpor.
Yuk intip koleksinya:
db.pets.find()
Hasil:
{ "_id" : 5, "name" : "Hop", "type" : "Kangaroo" } { "_id" : 4, "name" : "Bubbles" }
Seperti yang diharapkan, dua dokumen baru kami adalah satu-satunya yang ada dalam koleksi.
Mode Impor
Ada berbagai mode impor yang dapat Anda gunakan dengan mongoimport
. Mode ini menentukan apa yang terjadi jika sudah ada dokumen yang cocok dalam koleksi yang Anda coba impor.
Modusnya adalah sebagai berikut:
Mode | Deskripsi |
---|---|
insert | Ini adalah mode default. Mode ini menyisipkan dokumen dari file impor. Jika dokumen yang cocok sudah ada dalam koleksi, terjadi kesalahan. Dokumen yang cocok adalah dokumen yang memiliki ID unik yang sama (seperti _id yang cocok field) sebagai dokumen dalam file impor. |
upsert | Mengganti dokumen yang ada di database dengan dokumen yang cocok dari file impor. Semua dokumen lain dimasukkan. |
merge | Menggabungkan dokumen yang ada yang cocok dengan dokumen dalam file impor dengan dokumen baru. Semua dokumen lain dimasukkan. |
delete | Menghapus dokumen yang ada di database yang cocok dengan dokumen di file impor. Dokumen yang tidak cocok tidak akan berpengaruh. |
Lihat Mode Impor mongoimport
untuk contoh setiap mode.
Periksa mongoimport
mongoimport
adalah bagian dari paket Alat Database MongoDB. Alat Database MongoDB adalah rangkaian utilitas baris perintah untuk bekerja dengan MongoDB.
Jika Anda tidak yakin apakah Anda memiliki MongoDB Database Tools/mongoimport
terinstal, coba jalankan perintah berikut di Terminal atau Command Prompt Anda untuk memeriksa:
mongoimport --version
Jika Anda memilikinya, Anda akan melihat informasi versi, dll. Jika Anda tidak memilikinya, Anda dapat menggunakan petunjuk penginstalan di situs web MongoDB untuk menginstalnya ke sistem Anda.
Di Mana Menjalankan Perintah?
Jangan lupa, Anda harus menjalankan mongoimport
perintah dari baris perintah sistem Anda (mis. Terminal baru atau jendela Prompt Perintah).
Jangan jalankan dari mongo
kerang.