MongoDB:n kehittäminen JavaScriptillä

Mongodb N Kehittaminen Javascriptilla



Yksi MongoDB:n käytön merkittävimmistä eduista verkkokehittäjille on sen erinomainen integrointi JavaScriptiin. MongoDB tarjoaa alkuperäisen JavaScript-ohjaimen, jonka avulla kehittäjät voivat olla vuorovaikutuksessa tietokannan kanssa suoraan JavaScript-koodin avulla. Nyt MongoDB Node.js -ajurin asentaminen koneeseen on välttämätöntä, ennen kuin voimme aloittaa MongoDB-sovellusten luomisen JavaScriptillä. Meidän on käytettävä tätä varten seuraavaa komentoa:

npm i mongodb

Ohjaimen avulla voimme olla vuorovaikutuksessa MongoDB:n kanssa JavaScript-koodistasi ja suorittaa erilaisia ​​toimintoja, kuten yhteyden muodostaminen tietokantaan, tietojen lisääminen, tiedoista kysely ja tietojen päivittäminen.







Esimerkki 1: Kehitä MongoDB-yhteys JavaScriptillä

Aloita muodostamalla yhteys MongoDB-palvelimeen JavaScriptillä, joka voidaan suorittaa käyttämällä 'npm'-moduulia, kuten aiemmin on käsitelty.



konst { MongoClient } = vaatia ( 'mongodb' ) ;

konst url = 'mongodb:// 127.0.0.1:27017 ' ;
konst asiakas = Uusi MongoClient ( url ) ;
konst dbName = 'MyDB' ;

asynk toiminto pää ( ) {
odottaa asiakasta. kytkeä ( ) ;
konsoli. Hirsi ( 'Yhdistetty palvelimeen onnistui' ) ;
konst db = asiakas. db ( dbName ) ;
konst kokoelma = db. kokoelma ( 'Henkilöt' ) ;

palata 'tehty.' ;
}

pää ( )
. sitten ( konsoli. Hirsi )
. ottaa kiinni ( konsoli. virhe )
. vihdoinkin ( ( ) => asiakas. kiinni ( ) ) ;

Tuomme ensin vaaditun MongoClient-sovelluksen 'mongodb'-moduulista 'File.js'-tiedostossamme. Määritämme sitten yhteyden URL-osoitteen MongoDB-palvelimelle (url) ja luomme uuden MongoClient-esiintymän käyttämällä määritettyä URL-osoitetta.



Tämän jälkeen määritämme yhteydessä käytettävän MongoDB-tietokannan nimen (dbName). Seuraavaksi asynkroninen main()-funktio käsittelee MongoDB-palvelimen päätoiminnot. Tässä muodostamme yhteyden MongoDB-palvelimeen käyttämällä await client.connect(). Tämä on asynkroninen toiminto, joten toiminto pysähtyy, kunnes yhteys on muodostettu onnistuneesti. Saamme nähdä kehotteeseen tulevan viestin, kun yhteys on muodostettu onnistuneesti. Saamme viittauksen tietokantaan määritetyllä nimellä kohdassa 'dbName' käyttämällä client.db(dbName).





Sitten saamme viittauksen kokoelmaan nimeltä 'Persons' käyttämällä db.collection('Persons'). Main()-funktion määrittämisen jälkeen kutsumme main()-funktiota suorittamaan toiminnot. Jos main()-funktio ratkeaa onnistuneesti, se tulostaa tuloksen (tässä tapauksessa se on 'done'-merkkijono) käyttämällä .then(console.log) -funktiota. Jos suorituksen aikana tapahtuu virhe, se havaitsee virheen ja tulostaa sen käyttämällä .catch(console.error) -komentoa. Lopuksi se varmistaa, että MongoDB-asiakasyhteys suljetaan komennolla .finally(() => client.close()).

Tästä syystä kehote näyttää viestin, jossa MongoDB-yhteys on muodostettu JavaScript-tiedostossa:



Esimerkki 2: Lisää MongoDB-dokumentti JavaScriptillä

Nyt kun yhteys MongoDB-palvelimeen on muodostettu, voimme käyttää MongoDB-kyselyitä JavaScriptin kanssa. Tässä käytämme lisäyskyselyä yhden asiakirjan lisäämiseksi.

konst { MongoClient } = vaatia ( 'mongodb' ) ;

konst url = 'mongodb:// 127.0.0.1:27017 ' ;
konst asiakas = Uusi MongoClient ( url ) ;
konst dbName = 'MyDB' ;

asynk toiminto pää ( ) {
konst db = asiakas. db ( dbName ) ;
konst kokoelma = db. kokoelma ( 'käyttäjät' ) ;
konst insertDoc =
odottaa keräystä. insertOne ( { nimi : 'Andrew' , ikä : 23 } ) ;
konsoli. Hirsi ( 'Asiakirja lisätty =' , insertDoc ) ;
palata 'tehty.' ;
}

pää ( )
. sitten ( konsoli. Hirsi )
. ottaa kiinni ( konsoli. virhe )
. vihdoinkin ( ( ) => asiakas. kiinni ( ) ) ;

Määrittelemme main()-funktion asynkroniseksi funktioksi, joka suorittaa tietokannan lisäystoiminnon. Sen sisällä muodostamme yhteyden MongoDB-palvelimeen käyttämällä MongoClient-instanssia ja URL-osoitetta. Sitten käytämme määritettyä tietokantaa (MyDB) käyttämällä client.db(dbName) -tiedostoa ja haemme 'käyttäjät'-kokoelman tietokannasta käyttämällä db.collection('users').

Tämän jälkeen lisäämme asiakirjan, jonka kenttien nimi on 'Andrew' ja ikä on 23, 'käyttäjät'-kokoelmaan käyttämällä collection.insertOne() -kokoelmaa. Metodi insertOne() palauttaa lupauksen, joka ratkeaa lisäyksen tuloksella. Lisätty asiakirja näytetään console.log-tiedoston avulla. Lopuksi suljemme MongoDB-asiakasyhteyden.

MongoDB-tietokantakokoelmaan lisätty asiakirja on lisätty onnistuneesti seuraavan tulosteen mukaisesti:

Esimerkki 3: Etsi MongoDB-dokumentti JavaScriptillä

Samoin voimme käyttää MongoDB:n 'etsi'-kyselyä JavaScriptillä löytääksemme asiakirjan edellisessä esimerkissä luodusta kokoelmasta.

konst { MongoClient } = vaatia ( 'mongodb' ) ;

konst url = 'mongodb:// 127.0.0.1:27017 ' ;
konst asiakas = Uusi MongoClient ( url ) ;
konst dbName = 'MyDB' ;

asynk toiminto pää ( ) {
konst db = asiakas. db ( dbName ) ;
konst kokoelma = db. kokoelma ( 'käyttäjät' ) ;
konst FindQuery = { nimi : 'Andrew' } ;
konst etsiDoc = odottaa keräystä. löytö ( FindQuery ) . toArray ( ) ;
konsoli. Hirsi ( 'Dokumentti =' , etsiDoc ) ;
}

pää ( )
. sitten ( konsoli. Hirsi )
. ottaa kiinni ( konsoli. virhe )
. vihdoinkin ( ( ) => asiakas. kiinni ( ) ) ;

Aloitamme esittelyllä päätoiminnosta, jossa muodostamme ensin yhteyden MongoDB-palvelimeen käyttämällä luotua MongoClient-ilmentymää ja määritettyä URL-osoitetta. Tämän jälkeen käytämme MyDB-tietokantaa käyttämällä client.db(dbName) -tiedostoa, jossa tietokannan nimi on aiemmin määritetty tietokannan nimi.

Seuraavaksi saamme viittauksen 'käyttäjät'-kokoelmaan tietokannasta käyttämällä db.collection('users'). Luodaan 'findQuery'-niminen kyselyobjekti, joka määrittää, että haettavien asiakirjojen nimikentän tulee olla yhtä suuri kuin 'Andrew'. Tämän jälkeen suoritamme 'haku'-kyselyn 'käyttäjät'-kokoelmalle käyttämällä collection.find(findQuery) -komentoa, joka palauttaa kohdistimen vastaaviin asiakirjoihin.

'Odota'-avainsanaa käytetään ennen collection.find():tä sen varmistamiseksi, että tulos on ratkaistu ennen jatkamista. Hakutoiminnon tulos muunnetaan dokumenttien joukoksi toArray()-funktiolla, ja löydetyt asiakirjat tallennetaan 'findDoc'-muuttujaan. Asiakirjat kirjataan sitten konsoliin console.log-tiedoston avulla.

Tämän seurauksena MongoDB-kokoelman löydetty asiakirja näytetään suorituksen yhteydessä:

Esimerkki 4: Päivitä MongoDB-dokumentti JavaScriptillä

Seuraavaksi suoritamme 'päivitys'-toiminnon JavaScriptissä päivittääksemme MongoDB-kokoelman määritetyn asiakirjan.

konst { MongoClient } = vaatia ( 'mongodb' ) ;

konst url = 'mongodb:// 127.0.0.1:27017 ' ;
konst asiakas = Uusi MongoClient ( url ) ;
konst dbName = 'MyDB' ;

asynk toiminto pää ( ) {
konst db = asiakas. db ( dbName ) ;
konst kokoelma = db. kokoelma ( 'käyttäjät' ) ;
konst updateQuery = { nimi : 'Andrew' } ;
konst päivitysnimi = { $set : { nimi : 'Hän itse' } } ;
konst päivitystulos = odottaa keräystä. updateOne ( updateQuery , päivitysnimi ) ;
konsoli. Hirsi ( 'Päivitetty asiakirja =' , päivitystulos ) ;
palata 'tehty' ;
}

pää ( )
. sitten ( konsoli. Hirsi )
. ottaa kiinni ( konsoli. virhe )
. vihdoinkin ( ( ) => asiakas. kiinni ( ) ) ;

Päivittääksemme “käyttäjät”-kokoelmassa olevan asiakirjan kutsumme main()-funktion. Valmistelemme sitten 'päivitys'-kyselyn käyttämällä { name: 'Andrew' } löytääksemme asiakirjan, jonka nimikenttä vastaa 'Andrew'. Tämän jälkeen määritimme vastaavan asiakirjan nimikenttään 'Sam' käyttämällä { $set: { name: 'Sam' } }.

Määrittelemme 'päivitys'-kyselyn ja 'päivitys'-toiminnon päivityksen suorittamiseksi käyttämällä collection.updateOne(updateQuery, updateName). UpdateOne()-menetelmä päivittää ensimmäisen 'päivitys'-kyselyä vastaavan asiakirjan ja palauttaa objektin, joka edustaa päivityksen tulosta. 'updateResult'-muuttuja sisältää päivitystoiminnon tuloksen.

Seuraava tulosnäyttö näyttää päivitetyn kyselyn tulokset:

Esimerkki 5: Poista MongoDB-dokumentti JavaScriptillä

Lopuksi käytämme MongoDB:n poistomenetelmää edellisen asiakirjan poistamiseen MongoDB:stä JavaScriptin sisällä.

konst { MongoClient } = vaatia ( 'mongodb' ) ;

konst url = 'mongodb:// 127.0.0.1:27017 ' ;
konst asiakas = Uusi MongoClient ( url ) ;
konst dbName = 'MyDB' ;

asynk toiminto pää ( ) {
konst db = asiakas. db ( dbName ) ;
konst kokoelma = db. kokoelma ( 'käyttäjät' ) ;
konst deleteQuery = { nimi : 'Hän itse' } ;
konst poista tulos = odottaa keräystä. deleteOne ( deleteQuery ) ;
konsoli. Hirsi ( 'Poistettu asiakirja =' , poista tulos ) ;
palata 'tehty' ;
}

pää ( )
. sitten ( konsoli. Hirsi )
. ottaa kiinni ( konsoli. virhe )
. vihdoinkin ( ( ) => asiakas. kiinni ( ) ) ;

Luomme 'delete'-kyselyobjektin nimeltä 'deleteQuery', joka määrittää poistettavien asiakirjojen kriteerit. Tässä tapauksessa se etsii asiakirjoja, joiden nimikenttä on sama kuin 'Sam'. Kun poistokysely on valmisteltu, käytämme varsinaista poistotoimintoa käyttämällä kokoelmaobjektin deleteOne()-metodia.

Välitämme 'deleteQuery'-argumentin 'deleteOne'-argumentiksi, joka poistaa ensimmäisen vastaavan asiakirjan, joka täyttää kyselyssä määritetyt ehdot. 'deleteResult'-muuttuja sisältää poistotoiminnon tuloksen.

Määritetty asiakirja poistetaan MongoDB-kokoelmasta 'javascript'-tiedoston avulla:

Johtopäätös

Meillä on nyt perustavanlaatuinen käsitys MongoDB:n käytöstä JavaScriptin kanssa MongoDB Node.js -ohjaimen kautta. Esitimme kaiken Mongo DB:n eri toiminnoilla aina yhteyden muodostamisesta asiakirjan poistamiseen JavaScriptillä. Sieltä voimme rakentaa monimutkaisempia sovelluksia ja integroida MongoDB:n Node.js-projekteihin tarpeen mukaan.