MongoDB memberi penggunanya kemampuan untuk membuat database modern yang mudah diakses dan dimanipulasi.

MongoDB adalah database open-source NoSQL yang tersedia untuk digunakan di semua sistem operasi.

Jika Anda mempelajari desain database di sekolah, kemungkinan besar Anda tidak mempelajari cara menggunakan MongoDB atau mendapatkan banyak pengalaman dengan database NoSQL. Hal ini tidak mengherankan — hingga tahun 1998 banyak orang bahkan belum pernah mendengar tentang NoSQL, dan baru pada tahun 2009 database NoSQL mulai mendapatkan daya tarik.

Apa itu NoSQL?

Akronim SQL adalah singkatan dari "bahasa kueri terstruktur". SQL digunakan untuk melakukan operasi matematika pada data yang disimpan dalam database yang disusun secara kaku oleh baris dan kolom (tabel).

Akronim NoSQL, tergantung pada siapa Anda bertanya, merupakan singkatan dari "tidak hanya SQL" atau "non SQL". Namun, satu fakta bahwa setiap orang dapat disepakati adalah bahwa NoSQL digunakan untuk melakukan operasi pada data yang disimpan dalam database tidak terstruktur oleh baris dan kolom.

Ada beberapa database NoSQL yang ada, tetapi nama yang berdiri di atas yang lain adalah MongoDB. Faktanya, beberapa orang berpikir bahwa MongoDB adalah satu-satunya database dari jenisnya.

Apa itu MongoDB?

NoSQL mendukung empat jenis database: dokumen, penyimpanan nilai kunci, berorientasi kolom, dan grafik. MongoDB adalah database dokumen karena menyimpan data dalam dokumen seperti JSON, dan seperti semua database, ia mendukung semua operasi CRUD yang penting.

Terkait: Bagaimana Database MongoDB Dapat Mengatur Data Anda Dengan Lebih Baik

Apa itu Operasi CRUD?

Singkatan CRUD adalah singkatan dari "buat, baca, perbarui, dan hapus". CRUD mewakili empat persyaratan fungsional dasar dari semua database. Jika Anda menggunakan database yang tidak memungkinkan Anda untuk membuat, membaca, memperbarui, atau menghapus record, maka itu bukanlah database.

Unduh MongoDB

Sebelum Anda dapat melakukan operasi CRUD apa pun di MongoDB, Anda harus mengunduh dan menginstal MongoDB di file perangkat (atau gunakan versi cloud yang tersedia), jalankan server MongoDB, sambungkan, dan terakhir buat yang baru database.

Server MongoDB dapat diunduh dari resminya Situs MongoDB.

Menjalankan Server MongoDB

Jalankan Server MongoDB dari konsol IDE Anda.


/Users/Administrator/mongodb/bin/mongod.exe --dbpath = / Users / Administrator / mongodb-data

Kode di atas menjalankan server MongoDB. Bagian pertama menyediakan jalur langsung ke file yang dapat dieksekusi MongoDB (mongod.exe) yang disimpan di perangkat Anda. Nama jalur pada perangkat Anda harus berbeda, tetapi tujuannya adalah untuk mencapai file mongod.exe di folder bin.

Bagian kedua dari kode (yang dipisahkan oleh spasi) adalah nama jalur lain. Jalur ini mengarah ke "mongodb-data", yang merupakan file yang harus Anda buat sendiri. File ini akan berisi semua data yang dibuat di database kami.

File kami disebut "mongodb-data", tetapi namanya bisa apa saja yang menurut Anda cocok.

Menjalankan kode di atas seharusnya menghasilkan beberapa baris kode, tetapi dua baris yang perlu Anda perhatikan dengan seksama dapat dilihat di bawah ini:


{"t": {"$ date": "2021-04-14T18: 10: 11.779-05: 00"}, "s": "I", "c": "NETWORK", "id": 23015, "ctx": "listener", "msg": "Listening on", "attr": {"address": "127.0.0.1"}}
{"t": {"$ date": "2021-04-14T18: 10: 11.797-05: 00"}, "s": "I", "c": "NETWORK", "id": 23016, "ctx": "listener", "msg": "Menunggu koneksi", "attr": {"port": 27017, "ssl": "off"}}

Kedua baris ini masing-masing berisi localhost dan port default dari server MongoDB. Kedua nomor ini diperlukan untuk membuat koneksi ke server MongoDB agar kami dapat melakukan operasi CRUD kami.

Melakukan Operasi CRUD

Sekarang server MongoDB kami aktif dan berjalan, kami dapat terhubung dengannya (menggunakan driver yang sesuai) dan mulai melakukan operasi CRUD. Untuk artikel ini, kami akan membuat database pengguna sederhana yang akan menyimpan nama dan usia pengguna kami.

Membuat Pengguna

Ada dua cara utama untuk memasukkan pengguna ke dalam database MongoDB. Kedua metode tersebut cukup mirip, tetapi metode yang harus Anda pilih bergantung pada jumlah pengguna yang ingin Anda buat dalam contoh tertentu. Jika tujuan Anda adalah membuat satu pengguna, Anda harus menggunakan insertOne metode.

Namun, jika tujuannya adalah untuk membuat lebih dari satu pengguna dalam satu waktu, maka file insertMany metode adalah pilihan yang lebih baik.

Contoh Metode insertOne MongoDB


// import mongodb dan gunakan destructuring untuk mendapatkan fungsi MongoClient
const {MongoClient} = membutuhkan ("mongodb");
// URL koneksi dan database yang ingin kita hubungkan
const koneksiURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'manajer-pengguna';
// menggunakan fungsi koneksi pada MongoClient untuk terhubung ke server MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (kesalahan, klien) => {
// periksa apakah koneksi telah dibuat
jika (kesalahan) {
return console.log ('Tidak dapat terhubung ke database');
}
// akses database manajer-pengguna
const db = client.db (databaseName);
// masukkan satu pengguna ke dalam database
db.collection ('users'). insertOne ({
nama: 'John Doe',
usia: '28'
}, (kesalahan, hasil) => {
jika (kesalahan) {
return console.log ('Tidak dapat membuat pengguna');
}
console.log (result.ops);
})
})

Sebelum kami dapat membuat pengguna, koneksi harus dibuat dengan server MongoDB menggunakan driver MongoDB dari bahasa yang Anda gunakan. Driver paling populer, dan yang kami gunakan dalam tutorial ini, adalah driver NodeJS.

Dengan baris pertama dari kode kami di atas, kami dapat menggunakan metode penghancuran untuk mengambil fungsi MongoClient dari server kami.

MongoClient menerima tiga argumen:

  • URL (digunakan untuk terhubung ke server MongoDB)
  • Opsi / Pengaturan (dalam hal ini adalah menyetel variabel "useUnifiedTopology" ke true, untuk memfasilitasi penggunaan mesin Penemuan dan Pemantauan Server yang baru)
  • Fungsi panggilan balik yang membutuhkan dua argumen (kesalahan dan klien)

Di dalam fungsi callback metode MongoClient, kita akhirnya bisa memasukkan pengguna ke dalam database kita. Tetapi sebelum kita sampai ke titik itu, kita perlu mendapatkan akses ke database manajer-pengguna.

Salah satu keindahan menggunakan MongoDB adalah tidak perlu membuat database secara eksplisit. Setelah referensi ke database tertentu dibuat menggunakan argumen "klien" (seperti yang terlihat pada kode di atas), Anda bebas untuk mulai memanipulasinya.

Referensi ke database manajer-pengguna yang kita buat disimpan dalam variabel "db", yang akan kita gunakan untuk memasukkan pengguna pertama kita ke dalam database.

Dengan menggunakan referensi "db", kita dapat membuat koleksi baru, yang kita beri nama "pengguna".

Itu insertOne metode membutuhkan dua argumen yang diperlukan; dokumen (pengguna) dan fungsi panggilan balik. Dengan insertOne metode, kami dapat memasukkan pengguna dengan nama Peter Davis dengan usia 32, ke dalam database kami.

Fungsi callback membutuhkan dua argumen (kesalahan dan hasil). Fungsi result berisi metode ops yang kita gunakan untuk melihat pengguna yang baru saja kita buat di database kita. Ini menghasilkan keluaran berikut di konsol, setelah kode di atas dijalankan:


[{name: 'Peter Davis', age: '32', _id: 60772f869475e84740003c45}]

Meskipun kami hanya menyediakan dua bidang saat membuat pengguna, Anda dapat melihat dari keluaran di atas bahwa bidang ketiga telah dibuat. Ini adalah hal keren lainnya tentang MongoDB; itu secara otomatis menghasilkan id unik untuk setiap dokumen yang dibuatnya.

Terkait: Apa Perbedaan Pemodelan Data Di MongoDB?

Membaca Pengguna di MongoDB

Dua metode utama yang digunakan untuk membaca dokumen dari MongoDB adalah: Temukan dan findOne. Itu Temukan metode ini digunakan untuk membaca banyak dokumen sekaligus dan findOne metode digunakan untuk membaca satu dokumen pada satu waktu.

Contoh Metode MongoDB findOne


// import mongodb dan gunakan destructuring untuk mendapatkan metode MongoClient
const {MongoClient} = membutuhkan ("mongodb");
// URL koneksi dan database yang ingin kita hubungkan
const koneksiURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'manajer-pengguna';
// menggunakan fungsi koneksi pada MongoClient untuk terhubung ke server MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (kesalahan, klien) => {
// periksa apakah koneksi telah dibuat
jika (kesalahan) {
return console.log ('Tidak dapat terhubung ke database');
}
// buat database pengelola-pengguna
const db = client.db (databaseName);
// menemukan satu pengguna ke dalam database
db.collection ('users'). findOne ({name: 'Peter Davis'}, (error, user) => {
jika (kesalahan) {
return console.log ('Tidak dapat menemukan pengguna');
}
console.log (pengguna);
})
});

Perlu diingat bahwa Anda harus selalu terhubung ke server MongoDB dan database yang sesuai sebelum Anda dapat melakukan operasi CRUD (seperti yang terlihat pada contoh kami di atas).

Itu findOne Metode membutuhkan dua argumen yang diperlukan. Argumen pertama berisi kriteria pencarian; Anda dapat mencari dokumen menggunakan nama variabel apa pun yang unik. Dalam contoh kami di atas, kami menggunakan nama "Peter Davis".

Argumen kedua dari findOne metode adalah fungsi panggilan balik yang membutuhkan dua argumen; yang pertama adalah kesalahan jika dokumen tidak dapat ditemukan, dan yang kedua adalah dokumen (yang kami beri nama "pengguna").

Menjalankan kode di atas akan menghasilkan hasil sebagai berikut di konsol:


{_id: 60772f869475e84740003c45, nama: 'Peter Davis', usia: '32'}

Memperbarui Pengguna di MongoDB

Ada dua metode yang tersedia untuk memperbarui dokumen di MongoDB. Meskipun struktur keduanya sangat mirip, updateOne digunakan untuk memperbarui satu dokumen pada satu waktu dan updateMany digunakan untuk memperbarui banyak dokumen sekaligus.

Contoh Metode MongoDB updateOne


// Perbarui usia pengguna
db.collection ('users'). updateOne ({name: "Peter Davis"},
{
$ set: {
usia: '24'
}
})

Dengan kode di atas kita bisa mengupdate usia Peter Davis menjadi 24.

Menghapus Pengguna di MongoDB

Ada dua metode yang tersedia untuk menghapus dokumen dari MongoDB. Itu deleteOne metode digunakan untuk menghapus satu dokumen, dan deleteMany metode digunakan untuk menghapus banyak dokumen.

Contoh Metode MongoDB deleteOne


// hapus dokumen
db.collection ('users'). deleteOne ({name: 'Peter Davis'})

Operasi penghapusan adalah operasi CRUD paling sederhana yang dapat dilakukan di MongoDB. Seperti yang Anda lihat pada contoh di atas (tidak termasuk kode koneksi dan fungsi panggilan balik yang diperlukan), ini hanya membutuhkan satu baris kode.

Sekarang Anda Dapat Melakukan Operasi CRUD di MongoDB

Sekarang Anda memiliki pengetahuan dasar tentang MongoDB, dan Anda tahu apa arti NoSQL. Anda juga tahu apa singkatan CRUD dan mengapa operasi ini adalah kualitas penting dari setiap database.

Artikel ini memberi Anda semua alat yang diperlukan untuk melakukan empat operasi CRUD dasar di MongoDB. Sekarang setelah Anda dilengkapi dengan pengetahuan operasi CRUD, Anda dapat mulai mempelajari cara terbaik untuk membuat model data Anda menggunakan MongoDB.

Kredit Gambar: Alexander Sosluev /WiKiMedia Commons

Surel
Apa Perbedaan Pemodelan Data Di MongoDB?

Mempertimbangkan pendekatan berbeda untuk database? Berikut cara kerja pemodelan data di MongoDB.

Baca Selanjutnya

Topik-topik yang berkaitan
  • Pemrograman
  • Tutorial Coding
  • database
Tentang Penulis
Kadeisha Kean (9 Artikel Dipublikasikan)

Kadeisha Kean adalah Pengembang Perangkat Lunak Tumpukan Penuh dan Penulis Teknis / Teknologi. Dia memiliki kemampuan berbeda untuk menyederhanakan beberapa konsep teknologi yang paling kompleks; menghasilkan materi yang dapat dengan mudah dipahami oleh pemula teknologi apa pun. Dia bersemangat menulis, mengembangkan perangkat lunak yang menarik, dan berkeliling dunia (melalui film dokumenter).

Selebihnya Dari Kadeisha Kean

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk mendapatkan tip teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Satu langkah lagi…!

Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan kepada Anda.

.