Ako integrovať ovládač MongoDB Node.js

Ako Integrovat Ovladac Mongodb Node Js



MongoDB má oficiálny balík s názvom MongoDB Node.js Driver, ktorý umožňuje integráciu medzi programami Node.js a databázami. Pomocou tejto aplikácie môžeme okrem iných databázových akcií pripájať, vyhľadávať, aktualizovať a mazať dokumenty. Ak chcete použiť ovládač MongoDB Node.js Driver, musíme nainštalovať balík mongodb z npm, čo je Správca balíkov uzlov. V tomto článku sme poskytli každú fázu na získanie mongodb z npm nižšie.

Nastavte ovládač MongoDB pomocou modulu npm

Aby sme získali ovládač MongoDB node.js, musíme najprv získať modul npm pre Node.js v našom systéme, ktorý by sa mal aktualizovať. Do systému sme globálne nainštalovali npm s najnovšou verziou. Príkaz na inštaláciu modulu npm je uvedený nižšie:

inštalácia npm -g npm@9.8.1

Tu je evidentné, že do počítača bol pridaný modul npm.









Teraz potrebujeme integrovať MongoDB s ovládačom Node.js, takže nasledujúci príkaz nám pomôže získať ovládač Mongodb pomocou príkazu npm. Závislosti ukladá npm do súboru s názvom “package.json” s voľbou -save. Môžeme však nainštalovať ovládač MongoDB a pridať ho do závislostí projektu bez možnosti –save, aby sme dosiahli rovnaký výsledok.



npm nainštalovať mongodb --uložiť

Ovládač MongoDB je teraz úspešne nainštalovaný, ako je vidieť na nasledujúcom obrázku.





Ďalším krokom je vytvorenie jedinečného adresára, do ktorého je možné umiestniť program MongoDB. Ak to chcete urobiť, vytvorte adresár „NewFolder“ pomocou príkazu mkdir. Príkaz na vytvorenie adresára je nasledujúci:



mkdir NewFolder

Teraz sme zadali cestu, ako je uvedené nižšie, aby sme sa dostali do tohto konkrétneho adresára.

cd C:\Users\Hp\MyNodejs\NewFolder

Teraz sme teda v adresári „NewFolder“, ktorý bol vytvorený v predchádzajúcom kroku. Prejdeme k ďalšiemu procesu a vyzveme príkaz „npm init -y“, aby rýchlo inicializoval nový projekt Node.js vygenerovaním súboru package.json s predvolenými hodnotami bez potreby akéhokoľvek vstupu používateľa.

Základný súbor package.json s predvolenými hodnotami bol vytvorený ako výstup príkazu nižšie.

Príklad č. 1: Vytvorenie spojenia so serverom MongoDB pomocou integrácie Node.js

Všetky počiatočné kroky na získanie ovládača MongoDB v rámci Node.js boli úspešne dokončené vo vyššie uvedenej časti. Teraz môžeme ľahko nadviazať spojenie so serverom MongoDB. Na tento účel sme v adresári „NewFolder“ vytvorili súbor s názvom „MongoDB.js“. Skript na vytvorenie spojenia je uvedený nižšie.

const { MongoClient } = vyžadovať ( 'mongodb' );
const url = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
async function main() {
čakať client.connect();
console.log( „Úspešne pripojené k serveru MongoDB“ );
const db = klient.db(názov_db);
const collection = db.collection( 'používatelia' );
vrátiť 'hotový.' ;
}

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

Pridali sme triedu „MongoClient“ z balíka MongoDB na generovanie pripojenia k serveru MongoDB. Potom sme špecifikovali premenné „url“ a „db_name“, kde je definovaná adresa URL servera MongoDB, čo je v tomto prípade localhost, a zadali sme názov databázy MongoDB „NewDatabase“.

Potom sme nastavili funkciu async a nazvali ju main(). Vo vnútri tejto funkcie main() sme na vytvorenie spojenia použili funkciu connect() a keď je spojenie úspešne nadviazané, log() vypíše správu.

Po nastavení pripojenia získame prístup ku kolekcii „používatelia“. Tu môžeme vykonávať rôzne databázové operácie v rámci hlavnej funkcie. Ďalej sa zavolá funkcia main pomocou main().then(console.log).catch(console.error) na spracovanie prípadov úspechu a chýb. Nakoniec sme spojenie MongoDB uzavreli pomocou client.close() v bloku .finally().

Výstup ukázal, že spojenie so serverom MongoDB bolo úspešne nadviazané, keď sme súbor spustili príkazom node.

Príklad č. 2: Vložte dokumenty do kolekcie MongoDB pomocou Node.js

V predchádzajúcej časti sme sa pripojili k serveru MongoDB. Po vytvorení spojenia môžeme dokumenty vložiť do zbierky, ktorá je špecifikovaná vo vyššie uvedenom programe. Operácia vloženia dokumentu do kolekcie „user“ sa pridá do rovnakého súboru „MongoDB.js“.

const { MongoClient } = vyžadovať ( 'mongodb' );
const url = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
async function main() {
čakať client.connect();
console.log( „Úspešne pripojené k serveru MongoDB“ );
const db = klient.db(názov_db);
const collection = db.collection( 'používatelia' );

const insertDocs =
wait collection.insertMany([{ názov: 'Alex' , email: ' alex@example.com ' },
{ názov: 'Andy' , email: ' andy@example.com ' },
{ názov: 'sám' , email: ' sam@example.com ' }]);
console.log( 'Vložené dokumenty do zbierky =>' , vložiťDocs);
vrátiť 'hotový.' ;
}

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

Tu je celý skript rovnaký ako vyššie; práve sme vložili operáciu vloženia do asynchrónnej funkcie main(). Vytvorili sme premennú „insertDocs“ a potom zavolali funkciu insertMany() pomocou príkazu wait. Pre funkciu insertMany() sme špecifikovali tri dokumenty, ktoré obsahujú polia „name“ a „email“ s rôznymi hodnotami v každom z nich. Po správnom vložení všetkých dokumentov sa vygeneruje výpis.

Výstup zobrazený dokumenty sú úspešne vložené do kolekcie s tromi jedinečnými ID.

Príklad č. 3: Aktualizujte dokument do kolekcie pomocou Node.js

Rovnakým spôsobom môžeme použiť aj operáciu aktualizácie MongoDB v Node.js podľa rovnakého súboru „MongoDB.js“. Operácia sa pridá do súboru pre operáciu aktualizácie. Zvážte program pre túto operáciu.

const { MongoClient } = vyžadovať ( 'mongodb' );
const url = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
async function main() {
čakať client.connect();
console.log( „Úspešne pripojené k serveru MongoDB“ );
const db = klient.db(názov_db);
const collection = db.collection( 'používatelia' );

const updateDoc = wait collection.updateOne({ name: 'andy' },
{ $set: { email: ' andy12@example.com ' } });
console.log( 'Dokument aktualizovaný v zbierke=>' , updateDoc);
vrátiť 'hotový.' ;
}

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

Tu sme nazvali premennú „updateDocs“, kde je operácia aktualizácie definovaná operátorom $set. V definícii metódy updateOne() sa uvádza, že je potrebné aktualizovať iba jeden dokument. V metóde updateOne() v MongoDB sme poskytli pole mena s hodnotou ako prvý príkaz a potom sme priradili operátor $set k druhému výpisu, kde je uvedené pole „e-mail“, aby sa zodpovedajúcim spôsobom aktualizoval nový e-mail. .

Zobrazí sa výstup, kde sa dokument, ktorý sa má aktualizovať, priradí a upraví pomocou Node.js.

Príklad č. 4: Odstráňte dokument z kolekcie MongoDB pomocou Node.js

Ďalej sme použili operáciu odstránenia MongoDB pomocou Node.js. Operácia je uvedená v podobnom súbore „MongoDB.js“.

const { MongoClient } = vyžadovať ( 'mongodb' );
const url = 'mongodb:// 127.0.0.1:27017 ' ;
const client = new MongoClient(url);
const db_name = 'NewDatabase' ;
async function main() {
čakať client.connect();
console.log( „Úspešne pripojené k serveru MongoDB“ );
const db = klient.db(názov_db);
const collection = db.collection( 'používatelia' );

const deleteDoc = wait collection.deleteOne({ name: 'Andy' });
console.log( 'Dokument vymazaný=>' , deleteDoc);
vrátiť 'hotový.' ;
}

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

Tu sme definovali novú premennú „deleteDoc“, kde sa dokument vymaže z tej istej kolekcie „users“. Metóda deleteOne() je poskytnutá v rámci premennej „deleteDoc“ na vymazanie iba konkrétneho dokumentu, ktorým je ten s poľom „name“ uloženým s hodnotou „Andy“. Keď je dokument odstránený z kolekcie, súbor Node.js tiež vygeneruje správu o odstránení.

Ako sa očakávalo, dokument bol úspešne odstránený z kolekcie MongoDB „users“.

Záver

Ukázali sme, ako vytvoriť pripojenie k databáze MongoDB a získať prístup ku kolekcii pomocou ovládača MongoDB Node.js Driver. Po úspešnom pripojení k MongoDB sme do hlavnej funkcie zahrnuli ďalší operačný kód na vykonávanie operácií MongoDB.