Cara Mengintegrasikan Pemacu MongoDB Node.js

Cara Mengintegrasikan Pemacu Mongodb Node Js



MongoDB mempunyai pakej rasmi yang dipanggil MongoDB Node.js Driver, membolehkan penyepaduan antara program dan pangkalan data Node.js. Dengan aplikasi ini, kami boleh menyambung, bertanya, mengemas kini dan memadam dokumen, antara tindakan pangkalan data yang lain. Untuk menggunakan Pemacu MongoDB Node.js, kita perlu memasang pakej mongodb daripada npm, iaitu Pengurus Pakej Node. Dalam artikel ini, kami telah menyediakan setiap peringkat untuk mendapatkan mongodb dari npm di bawah.

Sediakan Pemacu MongoDB Menggunakan Modul npm

Untuk mendapatkan pemacu node.js MongoDB, pertama sekali kita perlu mendapatkan modul npm untuk Node.js pada sistem kami, yang harus dikemas kini. Kami telah memasang npm dengan versi terkini secara global pada sistem. Perintah untuk pemasangan modul npm disediakan di bawah:

npm install -g npm@9.8.1

Di sini, terbukti bahawa modul npm telah ditambahkan pada komputer.









Sekarang, kita perlu menyepadukan MongoDB dengan pemacu Node.js, jadi arahan berikut membantu kita mendapatkan pemacu Mongodb dengan menggunakan arahan npm. Kebergantungan disimpan oleh npm dalam fail yang dipanggil 'package.json' dengan pilihan -save. Walau bagaimanapun, kami boleh memasang pemacu MongoDB dan menambahkannya pada kebergantungan projek tanpa pilihan -save untuk mencapai hasil yang sama.



npm install mongodb --save

Pemacu MongoDB kini berjaya dipasang, seperti yang dilihat dalam imej berikut.





Langkah seterusnya ialah membuat direktori unik di mana program MongoDB boleh diletakkan. Untuk melakukan ini, buat direktori 'NewFolder' menggunakan arahan mkdir. Perintah untuk mencipta direktori adalah seperti berikut:



mkdir NewFolder

Sekarang, kami telah menentukan laluan seperti yang ditunjukkan di bawah untuk masuk ke direktori khusus itu.

cd C:\Users\Hp\MyNodejs\NewFolder

Oleh itu, kami kini berada dalam direktori 'NewFolder' yang telah dibuat pada langkah sebelumnya. Melangkah ke proses seterusnya, kami menggesa arahan 'npm init -y' untuk memulakan projek Node.js baharu dengan cepat dengan menjana fail package.json dengan nilai lalai tanpa memerlukan sebarang input pengguna.

Fail package.json asas dengan nilai lalai telah dibuat sebagai output arahan di bawah.

Contoh # 1: Mewujudkan Sambungan dengan Pelayan MongoDB dengan Mengintegrasikan Node.js

Semua langkah awal untuk mendapatkan pemacu MongoDB dalam Node.js telah berjaya diselesaikan dalam bahagian di atas. Kini, kita boleh mewujudkan sambungan dengan pelayan MongoDB dengan mudah. Untuk ini, kami telah mencipta fail dalam direktori 'NewFolder' dengan nama 'MongoDB.js'. Skrip untuk mewujudkan sambungan diberikan di bawah.

const { MongoClient } = memerlukan ( 'mongodb' );
url const = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
fungsi async main() {
tunggu client.connect();
console.log( 'Berjaya disambungkan ke pelayan MongoDB' );
const db = client.db(db_name);
koleksi const = db.collection( 'pengguna' );
kembali 'selesai.' ;
}

utama()
.then(console.log)
.catch(console.error)
.finally(() => client.close());

Kami telah menambah kelas 'MongoClient' daripada pakej MongoDB untuk menjana sambungan pelayan MongoDB. Kemudian, kami menentukan pembolehubah 'url' dan 'db_name' di mana URL pelayan MongoDB ditakrifkan, yang dalam kes ini ialah localhost, dan menentukan nama pangkalan data MongoDB 'NewDatabase.'

Selepas itu, kami menetapkan fungsi async dan memanggilnya main(). Di dalam fungsi main(), kami telah menggunakan fungsi connect() untuk mewujudkan sambungan, dan apabila sambungan berjaya diwujudkan, maka log() akan mencetak mesej.

Selepas menyediakan sambungan, kami mengakses 'pengguna' koleksi. Di sini, kita boleh melakukan pelbagai operasi pangkalan data di dalam fungsi utama. Seterusnya, fungsi utama dipanggil menggunakan main().then(console.log).catch(console.error) untuk mengendalikan kes kejayaan dan ralat. Akhirnya, kami menutup sambungan MongoDB menggunakan client.close() dalam blok .finally().

Output memaparkan bahawa sambungan dengan pelayan MongoDB telah berjaya diwujudkan semasa kami melaksanakan fail dengan arahan nod.

Contoh # 2: Masukkan Dokumen ke dalam Koleksi MongoDB dengan menggunakan Node.js

Kami telah menyambung ke pelayan MongoDB di bahagian sebelumnya. Apabila sambungan diwujudkan, kami boleh memasukkan dokumen ke dalam koleksi yang dinyatakan dalam program di atas. Operasi memasukkan dokumen ke dalam 'pengguna' koleksi ditambah pada fail yang sama, 'MongoDB.js'.

const { MongoClient } = memerlukan ( 'mongodb' );
url const = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
fungsi async main() {
tunggu client.connect();
console.log( 'Berjaya disambungkan ke pelayan MongoDB' );
const db = client.db(db_name);
koleksi const = db.collection( 'pengguna' );

const insertDocs =
tunggu collection.insertMany([{ nama: 'Alex' , e-mel: ' alex@example.com ' },
{ nama: 'Andy' , e-mel: ' andy@example.com ' },
{ nama: 'Sendiri' , e-mel: ' sam@example.com ' }]);
console.log( 'Memasukkan dokumen dalam Koleksi =>' , insertDocs);
kembali 'selesai.' ;
}

utama()
.then(console.log)
.catch(console.error)
.finally(() => client.close());

Di sini, semua skrip adalah sama seperti di atas; kami baru sahaja memasukkan operasi sisipan dalam fungsi async main(). Kami mencipta pembolehubah 'insertDocs' dan kemudian memanggil fungsi insertMany() menggunakan perintah await. Untuk fungsi insertMany(), kami telah menetapkan tiga dokumen yang mengandungi medan 'nama' dan 'e-mel' dengan nilai yang berbeza dalam setiap satu. Penyata akan dihasilkan apabila semua dokumen telah dimasukkan dengan betul.

Output yang dipaparkan dokumen berjaya dimasukkan ke dalam koleksi dengan tiga ID unik.

Contoh # 3: Kemas kini dokumen ke dalam Koleksi menggunakan Node.js

Dengan cara yang sama, kami juga boleh menggunakan operasi kemas kini MongoDB dalam Node.js dengan mengikuti fail yang sama, 'MongoDB.js.' Operasi ditambahkan pada fail untuk operasi kemas kini. Pertimbangkan program untuk operasi ini.

const { MongoClient } = memerlukan ( 'mongodb' );
url const = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
fungsi async main() {
tunggu client.connect();
console.log( 'Berjaya disambungkan ke pelayan MongoDB' );
const db = client.db(db_name);
koleksi const = db.collection( 'pengguna' );

const updateDoc = menunggu koleksi.updateOne({ nama: 'andy' },
{ $set: { e-mel: ' andy12@example.com ' } });
console.log( 'Dokumen Dikemas Kini dalam Koleksi =>' , kemas kiniDoc);
kembali 'selesai.' ;
}

utama()
.then(console.log)
.catch(console.error)
.finally(() => client.close());

Di sini, kami telah memanggil pembolehubah 'updateDocs' di mana operasi kemas kini ditakrifkan dengan operator $set. Takrif kaedah updateOne() menyatakan bahawa hanya satu dokumen perlu dikemas kini. Dalam kaedah updateOne() MongoDB, kami telah menyediakan medan nama dengan nilai sebagai pernyataan pertama, dan kemudian kami telah memberikan operator $set kepada pernyataan kedua, di mana medan 'e-mel' diberikan untuk mengemas kini e-mel baharu dengan sewajarnya .

Output dipaparkan di mana dokumen yang akan dikemas kini dipadankan dan diubah suai menggunakan Node.js.

Contoh # 4: Padamkan Dokumen daripada Koleksi MongoDB Menggunakan Node.js

Seterusnya, kami menggunakan operasi padam MongoDB menggunakan Node.js. Operasi disediakan dalam fail serupa 'MongoDB.js.'

const { MongoClient } = memerlukan ( 'mongodb' );
url const = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
fungsi async main() {
tunggu client.connect();
console.log( 'Berjaya disambungkan ke pelayan MongoDB' );
const db = client.db(db_name);
koleksi const = db.collection( 'pengguna' );

const deleteDoc = menunggu koleksi.deleteOne({ nama: 'Andy' });
console.log( 'Dokumen Dipadam =>' , deleteDoc);
kembali 'selesai.' ;
}

utama()
.then(console.log)
.catch(console.error)
.finally(() => client.close());

Di sini, kami telah menentukan pembolehubah baharu 'deleteDoc' di mana dokumen dipadamkan daripada 'pengguna' koleksi yang sama. Kaedah deleteOne() disediakan dalam pembolehubah 'deleteDoc' untuk hanya memadamkan dokumen tertentu, iaitu yang mempunyai medan 'nama' yang disimpan dengan nilai 'Andy'. Apabila dokumen dipadamkan daripada koleksi, fail Node.js juga akan menjana mesej pemadaman.

Seperti yang dijangkakan, dokumen itu berjaya dipadamkan daripada 'pengguna' koleksi MongoDB.

Kesimpulan

Kami menunjukkan cara untuk mewujudkan sambungan ke pangkalan data MongoDB dan mengakses koleksi menggunakan Pemacu MongoDB Node.js. Selepas berjaya menyambung dengan MongoDB, kami telah memasukkan kod operasi tambahan dalam fungsi utama untuk melaksanakan operasi MongoDB.