Apa itu db.collection.updateOne() di MongoDB?

Apa Itu Db Collection Updateone Di Mongodb



MongoDB adalah database non-relasional yang kuat yang dapat menyimpan banyak dokumen. Terkadang, pengguna mungkin perlu memperbarui satu dokumen yang memenuhi kriteria tertentu. Dalam situasi ini, mereka dapat menggunakan “ db.collection.updateOne() ”, yang memperbarui dan memodifikasi dokumen pertama yang memenuhi kriteria pemilihan dan memodifikasinya.

Apa itu Metode “db.collection.updateOne()” di MongoDB?

db.collection.updateOne() ” metode memperbarui satu dokumen yang cocok dengan kriteria yang ditentukan. Jika lebih dari satu dokumen cocok dengan kriteria, hanya dokumen pertama yang akan diubah. Ini dapat digunakan dengan Operator Pembaruan, seperti “ $set ”, “ $inc ' Dan masih banyak lagi .

Bagaimana Cara Menggunakan Metode “db.collection.updateOne()” di MongoDB?

db.collection.updateOne() ” metode dapat digunakan untuk memperbarui satu bidang serta beberapa bidang dari satu dokumen yang cocok dengan kriteria pemilihan. Selain itu, metode ini juga dapat menambahkan field ke dokumen dan dapat digunakan dengan operator update. Sintaks dari “ db.collection.updateOne() ” metode disediakan di bawah ini:







Sintaks Dasar



db.collection.updateOne ( { filter_kriteria } , { memperbarui } , { pilihan } )

Di sini, di sintaks di atas:



  • Metode ini akan memperbarui dokumen pertama yang memenuhi kriteria seleksi
  • filter_kriteria ” mendefinisikan kriteria untuk pembaruan
  • memperbarui ” berisi bidang yang akan diubah dalam dokumen
  • pilihan ” Argumen adalah argumen opsional yang mengubah cara kerja metode ini, seperti “ upser ' Dan ' petunjuk

Untuk postingan ini, kita akan menggunakan “ Linuxint_Col2 ” dokumen koleksi untuk menunjukkan cara kerja “ db.collection.updateOne() ' metode. Untuk melihat dokumen yang disimpan dalam koleksi ini, jalankan perintah yang disediakan:





db.Linuxhint_Col2.find ( )

Keluaran

Output mengambil semua dokumen yang disimpan di ' Linuxint_Col2 ” koleksi.



Contoh 1: Perbarui Bidang Tunggal
Untuk memperbarui bidang tunggal dalam dokumen, tentukan kriteria pemilihannya dan perbarui kriteria tersebut. Kriteria pemutakhiran dapat ditentukan menggunakan operator pemutakhiran. Mari kita jalankan kueri untuk memperbarui ' Pemodelan_Biaya ' bidang ke ' 18000 ' Dimana ' Nama keluarga ' objek sama dengan ' Dep ” dalam dokumen:

db.Linuxhint_Col2.updateOne ( { 'Nama_Model.Nama_Belakang' : 'Depp' } , { $set : { Pemodelan_Biaya: 18000 } } )

Keluaran

Output mengembalikan pesan sukses.

Untuk memverifikasi perubahan yang dibuat, ambil dokumen yang terpengaruh menggunakan “ menemukan() ' memerintah:

db.Linuxhint_Col2.find ( { 'Nama_Model.Nama_Belakang' : 'Depp' } )

Keluaran

Output memverifikasi bahwa dokumen berhasil diperbarui.

Contoh 2: Menambahkan Bidang Baru Menggunakan Metode “db.collection.updateOne()”.
db.collection.updateOne() ” Metode menambahkan bidang baru menggunakan ' $set ” operator dalam dokumen jika belum ada. Sebagai “ Pengalaman ” tidak ada bidang untuk dokumen di mana “ Pemodelan_Biaya ' kurang dari ' 9000 ”.

Mari kita tambahkan bidang baru “ Pengalaman ” dengan nilai “ Pemula ' dalam dokumen di mana ' Pemodelan_Biaya ' kurang dari ' 9000 ” menggunakan kueri ini:

db.Linuxhint_Col2.updateOne ( { 'Biaya_Pemodelan' : { $lt : 9000 } } , { $set : { 'Pengalaman' : 'Pemula' } } )

Keluaran

Output mengembalikan pesan yang menunjukkan bahwa satu dokumen cocok dengan kriteria pemilihan dan berhasil dimodifikasi.

Biarkan kami memverifikasinya dengan mengambil semua dokumen yang tersedia di koleksi ' Linuxint_Col2 ”:

db.Linuxhint_Col2.find ( )

Keluaran

Keluaran menunjukkan bahwa satu dokumen yang memenuhi syarat telah dimodifikasi, dan bidang baru berhasil dimasukkan.

Contoh 3: Perbarui Beberapa Bidang Dokumen Menggunakan Metode 'db.collection.updateOne()'.
Pengguna bahkan dapat memodifikasi banyak bidang dalam satu dokumen. Di sini kueri yang diberikan di bawah ini akan mengubah nama belakang dan usia untuk dokumen tempat ' Nama depan ” sama dengan “ Nuh “:

db.Linuxhint_Col2.updateOne ( { 'Nama_Model.Nama_Depan' : 'Nuh' } , { $set : { 'Nama_Model.Nama_Belakang' : 'Kelinci betina' , 'Model_Umur' : 23 } } )

Keluaran

Kueri telah dijalankan tanpa kesalahan.

Untuk memverifikasi perubahan, gunakan metode “find()” untuk mengambil dokumen di mana “ Nama depan ” sama dengan “ Nuh :

db.Linuxhint_Col2.find ( { 'Nama_Model.Nama_Depan' : 'Nuh' } )

Keluaran

Output berhasil mengembalikan dokumen yang dimodifikasi.

Contoh 4: Gunakan Metode “db.collection.updateOne()” dengan Update Operator
Seperti pada contoh sebelumnya, kami menggunakan ' $set ” perbarui operator untuk mengubah nilai dalam “ db.collection.updateOne() ' metode. Mari kita coba gunakan operator pembaruan lain “ $inc ” yang menambah bidang dengan jumlah yang ditentukan.

Di sini, di kueri yang disediakan di bawah ini, metode mencari dokumen di mana ' Nama depan ” sama dengan “ Kate ” dan menambahkan “ 1000 ' dalam ' Pemodelan_Biaya ” nilai bidang:

db.Linuxhint_Col2.updateOne ( { 'Nama_Model.Nama_Depan' : 'Kate' } , { $inc : { Pemodelan_Biaya: 1000 } } )

Keluaran

Output mengembalikan pesan sukses.

Untuk melihat perubahannya, gunakan tombol “ menemukan() ” metode untuk mengambil dokumen yang terpengaruh:

db.Linuxhint_Col2.find ( { 'Nama_Model.Nama_Depan' : 'Kate' } )

Keluaran

Output menggambarkan nilai yang dimodifikasi dari “ Pemodelan_Biaya ”.

Contoh 5: Tambahkan Dokumen Baru jika Belum Ada Menggunakan Argumen “upsert”.
Argumen opsional dapat digunakan untuk mengubah perilaku metode ini. Salah satu opsi tersebut adalah “ upser ” yang menambahkan dokumen baru jika tidak ada dokumen yang memenuhi kriteria pemilihan yang ditentukan dalam kueri.

Mari kita coba menambahkan dokumen baru dengan menentukan kriteria pemilihan yang tidak memenuhi dokumen yang sudah ada. Setelah itu, atur beberapa bidang untuk itu dan tambahkan opsi “ upser ” sebagai “benar” seperti yang ditunjukkan pada perintah yang diberikan di bawah ini:

db.Linuxhint_Col2.updateOne ( { 'Nama_Model.Nama_Depan' : 'David' } , { $set : { Pemodelan_Biaya: 10.000 ,  Model_Usia: 23 , 'Nama_Model.Nama_Belakang' : 'Smith' } } , { naik: BENAR } )

Keluaran

Output menunjukkan pesan yang diakui sebagai benar.

Terakhir, verifikasi modifikasinya dengan menjalankan perintah ini:

db.Linuxhint_Col2.find ( { 'Nama_Model.Nama_Depan' : 'David' } )

Keluaran

Outputnya menggambarkan bahwa dokumen baru telah berhasil ditambahkan.

Kesimpulan

db.collection.updateOne() ” metode di MongoDB digunakan untuk memperbarui dokumen pertama yang memenuhi kriteria pemilihan. Itu dapat memodifikasi satu atau beberapa bidang dalam dokumen dengan menggunakan operator pembaruan, seperti ' $set ' Dan ' $inc ”. Selain itu, metode ini juga menerima argumen opsional untuk mengubah perilaku metode, seperti “ upser ” yang menambahkan dokumen baru jika kriteria pemilihan tidak sesuai dengan dokumen yang ada. Posting ini telah membahas penggunaan ' db.collection.updateOne() ” metode di MongoDB.