Rumah >pangkalan data >MongoDB >Bagaimanakah saya membuat, membaca, mengemas kini, dan memadam dokumen (CRUD) di MongoDB?
Butiran artikel ini melaksanakan Operasi Buat, Baca, Kemas kini, dan Padam (CRUD) di MongoDB. Ia meliputi menggunakan kaedah seperti InsertOne (), Cari (), UpdateOne (), DeleteOne (), dan amalan terbaik untuk operasi yang cekap termasuk pengindeksan, operatio batch
_id
, name
, price
, dan description
fields. Insertmany ()
(untuk pelbagai dokumen). Berikut adalah contoh menggunakan shell mongoDB: <code class="javascript"> db.products.insertone ({name: & quot; Laptop & quot;, Harga: 1200, Description: & quot; Laptop yang berkuasa & quot; Tablet & quot; Bidang <code> _id </code> dijana secara automatik jika tidak disediakan. Pelaksanaan khusus pemacu akan sama, dengan menggunakan kaedah </code> atau <strong> Dokumen membaca: </strong> Anda boleh menentukan penapis untuk mendapatkan dokumen tertentu. Sebagai contoh: <pre class="brush:php;toolbar:false"> <code class="javascript"> // cari semua produk db.products.find () // cari produk dengan harga kurang daripada 500 db.products.find ({price: {$ lt: 500}}/ ... dengan objectId sebenar </code>
cari ()
mengembalikan kursor, membolehkan anda meleleh melalui hasilnya. findOne ()
Mengembalikan satu dokumen yang sepadan dengan pertanyaan. Sekali lagi, pelaksanaan pemandu akan mempunyai kaedah yang setara.
updateOne ()
mengemas kini dokumen tunggal, manakala updateMany ()
mengemas kini pelbagai dokumen. Anda menggunakan operator set untuk mengubah suai medan. <code class="javaScript"> // mengemas kini harga produk tertentu db.products.updateOne ({name: & quot; Laptop & quot; {}, {$ inc: {price: {$ Multiply: [0.1, & quot; $ price & quot;]}}) </code>
Contoh pertama mengemas kini harga komputer riba. Contoh kedua menggunakan pengendali $ inc
untuk meningkatkan harga semua produk. Kemas kini yang lebih kompleks boleh dicapai dengan menggunakan pengendali kemas kini lain seperti $ push
, $ pull
, $ addtoset
, dan lain -lain. class = "JavaScript"> // Padam produk tertentu db.products.deleteOne ({name: & quot; keyboard & quot;}) // Padam semua produk dengan harga lebih besar daripada 1000 db.products.deletemany ({$ gt: 1000}} Kriteria. Indeks adalah serupa dengan indeks dalam pangkalan data relasi. Pilih jenis indeks yang sesuai (contohnya, satu bidang, kompaun, geospatial) berdasarkan pertanyaan anda. Operasi. Reka bentuk skema yang betul boleh meningkatkan prestasi pertanyaan secara dramatik.
where
fasal kerana mereka boleh lambat. Sebaliknya, gunakan pengendali seperti $ gt
, $ lt
, $ in
, dan lain -lain, yang memanfaatkan indeks dengan berkesan. Gunakan unjuran yang sesuai ( {_id: 0, Nama: 1, Harga: 1}
) untuk mengambil hanya medan yang diperlukan, mengurangkan pemindahan data. Kebanyakan pemandu menawarkan keupayaan kumpulkan sambungan terbina dalam. Pengendalian ralat adalah penting untuk aplikasi MongoDB yang mantap. Pemandu menyediakan mekanisme untuk menangkap dan mengendalikan pengecualian semasa operasi CRUD.
mongoDB
driver): // ... kod sambungan ... const client = mongoclient baru (uri); fungsi async run () {cuba {menunggu klien.connect (); const db = client.db ('myDatabase'); const collection = db.collection ('Products'); // ... operasi crud menggunakan collection.insertone (), collection.find (), dll ...} akhirnya {menunggu klien.close (); }} run (). Catch (console.dir); python (menggunakan pymongo
driver): DB ['Products'] # ... Operasi CRUD Menggunakan Collection.insert_one (), Collection.Find (), dan lain -lain ... client.close ()
Kedua -dua contoh menunjukkan struktur asas. Rujuk dokumentasi untuk pemacu khusus anda untuk maklumat terperinci mengenai kaedah dan pilihan yang tersedia. Ingatlah untuk menggantikan ruang letak seperti uri
dengan rentetan sambungan sebenar anda.
Atas ialah kandungan terperinci Bagaimanakah saya membuat, membaca, mengemas kini, dan memadam dokumen (CRUD) di MongoDB?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!