Rumah > Soal Jawab > teks badan
Kini terdapat keperluan untuk menggunakan MongoDB untuk mencari dokumen dan mengemas kini medan dalam dokumen pada masa yang sama, iaitu, menggunakan satu arahan untuk menyelesaikan carian dan kemas kini (atomicity).
Mongo mempunyai kaedah yang serupa untuk satu dokumen, seperti operasi carian dan kemas kini FindAndModify, yang bersifat atom, tetapi hanya mempengaruhi satu dokumen.
Saya ingin bertanya sama ada terdapat sebarang operasi yang boleh mencari berbilang dokumen dan mengemas kini medan dokumen dengan sewajarnya.
phpcn_u15822017-05-02 09:27:48
Kemas kini Mongoose boleh dikendalikan dalam kelompok Atribut berbilang kemas kini ditetapkan kepada benar, http://www.nonb.cn/blog/nodej...
漂亮男人2017-05-02 09:27:48
1. Atomicity dalam MongoDB:
1. Ia adalah atom untuk satu dokumen FindAnyModify hanya mengendalikan satu dokumen, jadi ia adalah atomik;
2. Untuk operasi pada berbilang dokumen, setiap operasi pada satu dokumen adalah atom, tetapi keseluruhan operasi bukan atom Semasa operasi, mungkin terdapat operasi daripada dokumen lain.Tetapi dalam kebanyakan senario, keatoman satu dokumen sudah memenuhi keperluan
Jika anda perlu mencapai atomicity untuk pengendalian berbilang dokumen, anda perlu melaksanakannya dengan kod/reka bentuk anda sendiri.
2. Untuk keperluan nyata anda, anda sebenarnya boleh menggunakan pelbagai pilihan kemas kini, atau terus menggunakan updateMany.
db.collection.updateMany()
db.collection.update(,{multi : true})
Untuk rujukan. Sayangi MongoDB!