MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Sisipan MongoDB Banyak ()

Di MongoDB db.collection.insertMany() metode memasukkan beberapa dokumen ke dalam koleksi.

collection bagian adalah nama koleksi untuk memasukkan dokumen ke dalamnya.

Contoh

Berikut ini contoh penggunaan db.collection.insertMany() untuk memasukkan beberapa dokumen ke dalam koleksi yang disebut pets :

db.pets.insertMany([
    { _id: 1, name: "Wag", type: "Dog" },
    { _id: 2, name: "Bark", type: "Dog" },
    { _id: 3, name: "Meow", type: "Cat" }
    ])

Hasil:

{ "acknowledged" : true, "insertedIds" : [ 1, 2, 3 ] } 

db.collection.insertMany() metode mengembalikan dokumen yang berisi:

  • Boolean acknowledged sebagai true jika operasi berjalan dengan masalah tulis atau false jika masalah penulisan dinonaktifkan.
  • Array _id nilai untuk setiap dokumen yang berhasil dimasukkan.

Sekarang jika kita menggunakan db.collection.find() untuk melihat koleksi, kita akan melihat dokumen yang baru ditambahkan.

db.pets.find()

Hasil:

{ "_id" : 1, "name" : "Wag", "type" : "Dog" }
{ "_id" : 2, "name" : "Bark", "type" : "Dog" }
{ "_id" : 3, "name" : "Meow", "type" : "Cat" }

Dalam hal ini, tiga dokumen kami adalah satu-satunya yang ada dalam koleksi, jadi hanya dokumen-dokumen ini yang dikembalikan.

Namun, jika koleksinya besar, kami dapat menggunakan ID dokumen untuk mempersempit hasilnya menjadi hanya dokumen yang kami minati.

db.pets.find({_id: {$in: [1,2,3]}})

Hasil:

{ "_id" : 1, "name" : "Wag", "type" : "Dog" }
{ "_id" : 2, "name" : "Bark", "type" : "Dog" }
{ "_id" : 3, "name" : "Meow", "type" : "Cat" }

Bagaimana jika Koleksi Tidak Ada?

Jika koleksi tidak ada, itu dibuat, dan dokumen ditambahkan ke dalamnya.

Jika koleksi sudah ada, maka dokumen cukup ditambahkan ke dalamnya (asalkan _id nilai tidak bertentangan dengan nilai yang sudah ada).

Saat saya membuat contoh ini, koleksinya tidak ada, jadi operasi penyisipan membuatnya.

_id Bidang

_id bidang adalah bidang pengenal unik di MongoDB.

Seperti yang ditunjukkan pada contoh sebelumnya, Anda dapat memberikan _id Anda sendiri lapangan dalam dokumen. Jika ya, maka nilainya harus unik di dalam koleksi. Ini karena _id your Anda kolom akan digunakan sebagai pengidentifikasi unik dokumen.

Berikut contoh penyisipan dokumen tanpa memberikan _id bidang.

db.pets.insertMany([
    { name: "Bruce", type: "Bat" },
    { name: "Sweetie", type: "Honey Badger" }
    ])

Hasil:

{
	"acknowledged" : true,
	"insertedIds" : [
		ObjectId("5fe30ef737b49e0faf1af215"),
		ObjectId("5fe30ef737b49e0faf1af216")
	]
}

_id nilai dokumen dikembalikan. Kita bisa menggunakan ini untuk mencari koleksi hanya untuk dokumen yang kita sisipkan.

Namun dalam hal ini, mari kita lihat keseluruhan koleksinya.

db.pets.find()

Hasil:

{ "_id" : 1, "name" : "Wag", "type" : "Dog" }
{ "_id" : 2, "name" : "Bark", "type" : "Dog" }
{ "_id" : 3, "name" : "Meow", "type" : "Cat" }
{ "_id" : ObjectId("5fe30ef737b49e0faf1af215"), "name" : "Bruce", "type" : "Bat" }
{ "_id" : ObjectId("5fe30ef737b49e0faf1af216"), "name" : "Sweetie", "type" : "Honey Badger" }

Kami dapat melihat bahwa dua dokumen baru kami termasuk dalam koleksi.

Yang ordered Parameter

db.collection.insertMany() metode juga menerima ordered parameter. Ini adalah parameter boolean dengan nilai default true .

ordered parameter menentukan apakah operasi penyisipan harus dipesan atau tidak.

Jika ordered disetel ke false , dokumen disisipkan dalam format yang tidak diurutkan dan dapat diurutkan ulang oleh mongod untuk meningkatkan kinerja.

Dengan sisipan yang dipesan, jika terjadi kesalahan selama penyisipan salah satu dokumen, MongoDB mengembalikan kesalahan tanpa memproses dokumen yang tersisa dalam larik.

Dengan sisipan yang tidak berurutan, jika terjadi kesalahan selama penyisipan salah satu dokumen, MongoDB terus memasukkan dokumen yang tersisa ke dalam larik.

Informasi Lebih Lanjut

db.collection.insertMany() metode ini juga menerima writeConcern argumen, yang menjelaskan tingkat pengakuan yang diminta dari MongoDB untuk operasi penulisan.

Lihat dokumentasi MongoDB untuk db.collection.insertMany() untuk informasi lebih lanjut.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menyimpan Hirarki Direktori di penyimpanan Data Nilai-Kunci

  2. Cara menggunakan Spring Boot dengan MongoDB

  3. Apakah aman menghapus file jurnal mongodb?

  4. Probabilitas tabrakan ObjectId vs UUID dalam sistem terdistribusi besar

  5. MongoDB mengonversi tanggal menjadi string