MongoDB

MongoDB-basis - Collecties maken, weergeven en neerzetten

MongoDB-basis - Collecties maken, weergeven en neerzetten
MongoDB is een NoSQL-database. Dit betekent dat er, in tegenstelling tot relationele databases, geen vaststaand schema is met verschillende rijen en kolommen of velden met goed gedefinieerde gegevenstypen. Analoog aan traditionele SQL-databasetabellen heeft MongoDB collecties. Waar er ooit rijen in een SQL-tabel waren, heeft MongoDB documenten. Gegevens worden opgevraagd in alle collecties en documenten met behulp van sleutel-waardeparen, die u binnenkort zult zien.

Het nut van MongoDB is het gebruiksgemak, de schaalbaarheid en de JSON-achtige syntaxis waarmee de opgeslagen gegevens worden weergegeven. Aan de andere kant, als u gekke bewerkingen op uw datasets zoals JOINs wilt doen, vindt u MongoDB omslachtig en zijn traditionele SQL-databases daar beter geschikt voor.

In ieder geval zou dit artikel geen enkele bekendheid met databases veronderstellen. We gaan er gewoon van uit dat je MongoDB op je server/desktop hebt geïnstalleerd (het is beschikbaar op Windows, Mac en Linux). Als dat is geïnstalleerd, zullen we onze voorbeelddatabase maken en MongoDB in actie zien.

Vereisten

  1. MongoDB-installatie. U kunt de officiële documentatie volgen om uw huidige besturingssysteem te installeren. OF
  2. Optioneel kunt u zich aanmelden voor MongoDB-atlas. Ze bieden een gratis laag met 512 MB aan permanente opslag. Perfecte omgeving voor experimenten of kleine projecten.
  3. Als u helemaal geen software wilt installeren, kunt u Katacoda bezoeken en hun webgebaseerde interface gebruiken als een kortstondige sandbox-omgeving.

Beginnen

Ervan uitgaande dat je een MongoDB-server hebt geïnstalleerd en een shell verbonden met de server, kunnen we beginnen met het verkennen van een paar functies ervan. Maar eerst een paar terminologieën - Een mongodb-server heeft een lijst met: databases dbs erin. Elke database kan meerdere collecties in het.

Een universiteit kan bijvoorbeeld een personeelsdatabase hebben die vervolgens verschillende collecties kan hebben voor verschillende afdelingen, zoals een collectie voor wiskunde, een voor biologie enzovoort.

Elke collectie kan dan een document bevatten, een document zou de details van een individueel personeelslid erin bevatten. Zoals eerder vermeld, worden de opgeslagen gegevens weergegeven op een JSON-achtige manier en kunnen we verschillende waarden opvragen met behulp van de sleutels waaraan ze zijn gekoppeld.

Database maken

Het maken van een database gebeurt impliciet wanneer u een database probeert te gebruiken. In dit voorbeeld, als je in Mongo shell bent en je typt in:

> gebruik testDb

MongoDB controleert eerst of je een database hebt met de naam testdb, zo niet, dan wordt er een nieuwe gemaakt die je kunt gebruiken en de Mongo Shell schakelaars naar testdb. Dit betekent dat elke verzameling en elk document dat wordt gemaakt, bijgewerkt of gelezen uit deze database zou komen, tenzij expliciet anders aangegeven.

U kunt de opdracht > db gebruiken om af te drukken in welke database u zich nu bevindt en de opdracht > show dbs gebruiken om alle beschikbare en gemaakte databases weer te geven.

> db
testDb
> toon dbs
beheerder   0.000 GB
configuratie 0.000 GB
lokaal   0.000 GB
mijndb    0.000 GB

Misschien wilt u de beheerders-, configuratiedatabases verlaten zoals deze door Mongo worden gebruikt voor administratieve doeleinden.

Collectie maken

Om een ​​verzameling aan te maken, moet u er eerst voor zorgen dat u zich in de juiste database bevindt waar u de verzameling wilt maken. U kunt nu op twee verschillende manieren een collectie maken:

1.   Expliciet een collectie maken:

Met behulp van de opdracht:

> db.createCollection("testCollection1");
"oké" : 1

Dit creëerde een verzameling met de naam testCollection1.

2.   Een document invoegen in een nieuwe verzameling

U kunt ook eenvoudig proberen een document in te voegen in een verzameling die niet bestaat. Mongo zal een collectie voor je maken. Houd er rekening mee dat hoewel dit handig is voor het programmatisch maken van verzamelingen, als u Mongo-shell gebruikt en ergens een typfout maakt terwijl u probeert een document in te voegen, het document mogelijk in een nieuwe database terechtkomt zonder dat u het weet.
De syntaxis is: db.collectienaam.invoegen (document);
Hier is db letterlijk de string db, verzameling

Als u bijvoorbeeld een verzameling testCollection2 in de testDb-database wilt maken, gebruikt u de volgende opdracht:

> db.testCollection2.invoegen(
naam: "Jan",
sleutel waarde"
leeftijd: 25
);

Hier wordt het documentgedeelte weergegeven in de volgende JSON-tekenreeks:


naam: "Jan",
sleutel waarde"
leeftijd: 25

Dit zijn de sleutel-waardeparen die typisch zijn voor een JSON-tekenreeks. De naam is de sleutel en "John" is de waarde. U kunt meerdere documenten in deze verzameling hebben met de sleutelnaam en een andere waarde voor naam, bijvoorbeeld Jane.

Gebruik de opdracht om alle collecties in een bepaalde database weer te geven:

> collecties tonen
testCollection1
testCollection2

U kunt zien dat beide collecties nu zijn gemaakt. We hebben ook per ongeluk geleerd hoe we een nieuw document aan een verzameling kunnen toevoegen.

Tonen

We hebben het show-trefwoord vrij veel gebruikt om de collecties en databases weer te geven. Om dit een beetje samen te vatten, dit waren de commando's:

> toon dbs
> collecties tonen

Deze kunnen samen met het commando db om de huidige database af te drukken erg handig zijn tijdens interactie met de Mongo-shell.

Drop-collecties en Drop-databases

De trefwoorddaling is iets dat we tot nu toe nog niet zijn tegengekomen. Het wordt gebruikt om collecties of zelfs hele databases van je mongo-server te verwijderen. De volgende syntaxis leidt u door het proces:

1.  Verzameling laten vallen

Laten we de verzameling testCollection2 die we eerder hebben gemaakt, verwijderen:

> db.testCollection2.laten vallen()

U kunt het commando show collections gebruiken om te controleren of dit inderdaad werkte. Er zal één database minder zijn dan we eerder hadden, ik zal je laten raden welke zal ontbreken.

2.  Database laten vallen

Voordat je blindelings de opdracht uitvoert om de database te laten vallen, absoluut zeker weten dat je gelijk hebt database. Anders verliest u mogelijk waardevolle gegevens die elders zijn opgeslagen. We zullen de database testDb laten vallen die we eerder hebben gemaakt, laten we ervoor zorgen dat we daar zijn:

> db
testDb
> db.dropDatabase();

De laatste opdracht laat de database vallen, zoals je kunt zien aan de naam.

Conclusie

MongoDB heeft aan populariteit gewonnen samen met de Node.js-project. Ze delen allebei een soort symbiose waardoor ze een succes konden worden. JSON-achtige weergave, schaalbaarheid en een gemakkelijke en dynamische manier om documenten te maken, hebben MongoDB behoorlijk wat bekendheid opgeleverd.

Als u op zoek bent naar databasetechnologie voor een snel weekendproject of zelfs voor een serieuze hoeveelheid gegevens, is MongoDB een optie die u serieus moet overwegen.

Hoe een spel op Linux te ontwikkelen
Tien jaar geleden zouden niet veel Linux-gebruikers voorspellen dat hun favoriete besturingssysteem ooit een populair spelplatform voor commerciële vi...
Open source-poorten van commerciële game-engines
Gratis, open source en platformonafhankelijke game-engine-recreaties kunnen worden gebruikt om zowel oude als enkele van de vrij recente gametitels te...
Beste opdrachtregelspellen voor Linux
De opdrachtregel is niet alleen je grootste bondgenoot bij het gebruik van Linux, hij kan ook de bron van entertainment zijn omdat je hem kunt gebruik...