MongoDB Array Objek menggunakan insert() dengan Contoh
โก Ringkasan Cerdas
MongoDB Contoh penggunaan array objek dengan insert() menunjukkan cara menambahkan beberapa dokumen ke dalam sebuah koleksi dalam satu operasi. Contoh ini menyimpan array data karyawan, menyematkan array di dalam sebuah dokumen, dan menampilkan hasilnya dengan rapi menggunakan fungsi print JSON.

Apa itu metode insert() di MongoDB?
Metode insert() di MongoDB Fungsi `insert()` menambahkan satu atau lebih dokumen ke dalam koleksi. Sebuah dokumen adalah kumpulan pasangan field dan value yang disimpan dalam BSON, yaitu bentuk biner dari JSON. Saat Anda memberikan satu dokumen, `insert()` akan menyimpan satu record tersebut; saat Anda memberikan array dokumen, fungsi ini akan menyimpan semuanya dalam satu operasi, yang lebih cepat daripada memasukkannya satu per satu.
Metode ini dijalankan terhadap koleksi tertentu menggunakan pola db.collection.insert(). Jika koleksi target belum ada, MongoDB Ini dibuat secara otomatis saat penyisipan pertama. Setiap dokumen juga menerima bidang _id unik jika Anda tidak menyediakannya, sehingga setiap catatan dapat diidentifikasi di kemudian hari.
Meskipun fungsi insert() masih berfungsi, versi yang lebih baru MongoDB Versi-versi terbaru menyediakan insertOne() dan insertMany() sebagai pengganti yang lebih jelas. Contoh-contoh di bawah ini menggunakan insert() untuk menambahkan array dokumen karyawan dan kemudian menampilkan hasilnya dalam format JSON yang mudah dibaca.
Menambahkan Array Dokumen
Perintah โsisipkanโ juga dapat digunakan untuk memasukkan beberapa dokumen ke dalam koleksi sekaligus. Contoh kode di bawah ini dapat digunakan untuk menyisipkan banyak dokumen sekaligus.
Contoh berikut menunjukkan bagaimana hal ini dapat dilakukan,
Langkah 1) Membuat JavaNaskah variabel yang disebut myEmployee untuk menampung berbagai dokumen
Langkah 2) Tambahkan dokumen yang diperlukan dengan Nama Bidang dan nilai ke variabel
Langkah 3) Gunakan perintah sisipkan untuk menyisipkan array dokumen ke dalam koleksi
var myEmployee= [ { "Employeeid" : 1, "EmployeeName" : "Smith" }, { "Employeeid" : 2, "EmployeeName" : "Mohan" }, { "Employeeid" : 3, "EmployeeName" : "Joe" }, ]; db.Employee.insert(myEmployee);
Jika perintah berhasil dijalankan, Output berikut akan ditampilkan
Outputnya menunjukkan bahwa 3 dokumen tersebut telah ditambahkan ke koleksi.
Cara Menyisipkan Array di Dalam Dokumen
Selain menyisipkan serangkaian dokumen terpisah, MongoDB memungkinkan Anda menyimpan array sebagai field di dalam satu dokumen. Ini berguna ketika satu record secara alami berisi daftar nilai, seperti karyawan yang memiliki beberapa keterampilan atau siswa yang terdaftar di beberapa mata kuliah. Karena MongoDB Dengan menggunakan model dokumen yang fleksibel, array berada langsung di dalam objek dan bukan di tabel terpisah, sehingga data yang terkait tetap berada dalam satu kelompok.
Contoh berikut menyisipkan satu dokumen karyawan yang berisi bidang array bernama Keterampilan:
db.Employee.insert( { "Employeeid" : 4, "EmployeeName" : "Alan", "Skills" : [ "MongoDB", "Node.js", "Express" ] } );
Bagian-bagian dalam dokumen ini berfungsi sebagai berikut:
- ID Karyawan ke NamaKaryawan adalah pasangan field dan nilai biasa.
- Keterampilan adalah sebuah field array yang menyimpan tiga nilai string di dalam tanda kurung siku.
- Seluruh dokumen, termasuk array yang tertanam di dalamnya, disimpan dalam satu operasi penyisipan.
Setelah menambahkan data, Anda dapat mengkonfirmasi array yang disematkan dengan kueri pencarian yang mencetak hasilnya dalam format JSON:
db.Employee.find( { "Employeeid" : 4 } ).forEach(printjson)
Output tersebut menunjukkan array Keterampilan yang tersarang di dalam dokumen karyawan. LaterAnda dapat menambahkan nilai baru ke dalam array dengan operator $push, atau membaca satu elemen berdasarkan posisi indeksnya. Menyimpan nilai yang terhubung dengan cara ini membuat setiap dokumen mandiri, mengurangi kebutuhan untuk melakukan join antar koleksi, dan membuat data lebih mudah dibaca dan dipelihara.
insert() vs insertOne() vs insertMany()
MongoDB menyediakan tiga metode terkait untuk menambahkan data. Tabel di bawah ini membandingkan ketiganya sehingga Anda dapat memilih yang tepat:
| metode | Tujuan | Example |
|---|---|---|
| memasukkan() | Metode lama yang menambahkan satu dokumen atau serangkaian dokumen. Metode ini masih berfungsi tetapi sudah usang di driver yang lebih baru. | db.Employee.insert(myEmployee) |
| insertOne() | Menambahkan tepat satu dokumen dan mengembalikan _id yang disisipkan. Lebih disukai untuk catatan tunggal. | db.Employee.insertOne({ โฆ }) |
| sisipkanBanyak() | Menambahkan serangkaian dokumen dalam satu panggilan dan mengembalikan semua _id yang dimasukkan. Lebih disukai untuk penyisipan massal. | db.Employee.insertMany([ { โฆ }, { โฆ } ]) |
Untuk proyek baru, gunakan insertOne() dan insertMany() karena memberikan tujuan yang lebih jelas dan pelaporan kesalahan yang lebih baik. Metode insert() tetap tersedia terutama untuk kompatibilitas mundur dengan tutorial dan skrip lama.
Mencetak dalam format JSON
JSON adalah format yang disebut JavaNotasi Objek Skrip, dan hanyalah cara untuk menyimpan informasi dengan cara yang terorganisir dan mudah dibaca. Dalam contoh selanjutnya, kita akan menggunakan fungsi pencetakan JSON untuk melihat keluaran dalam format yang lebih baik.
Mari kita lihat contoh pencetakan dalam format JSON
db.Employee.find().forEach(printjson)
Code Penjelasan:
- Perubahan pertama adalah menambahkan fungsi bernama forEach() ke fungsi find(). Fungsi ini memastikan untuk secara eksplisit menelusuri setiap dokumen dalam koleksi. Dengan cara ini, Anda memiliki kontrol lebih besar atas apa yang dapat Anda lakukan dengan setiap dokumen dalam koleksi.
- Perubahan kedua adalah memasukkan perintah printjson ke pernyataan forEach. Ini akan menyebabkan setiap dokumen dalam koleksi ditampilkan dalam format JSON.
Jika perintah berhasil dijalankan, Output berikut akan ditampilkan
Keluaran:
Outputnya dengan jelas menunjukkan bahwa semua dokumen dicetak dalam gaya JSON.


