MongoDB -listesamlinger

MongoDB -listesamlinger
Samlingene i MongoDB er den typen enhet som lagrer JSON -dokumentene som ligner på tabellen i en RDBMS -database. Noen ganger møter vi slike situasjoner i MongoDB der vi trenger å få en liste over alle samlingene som er til stede i den spesifiserte databasen. En enkelt MongoDB -kommando gjør det imidlertid enkelt å få tilgang til listen over alle tilgjengelige samlinger. Vi har forskjellige kommandoer fra MongoDB som er distribuert for å få navnene på samlingene i den eksisterende databasen. Denne MongoDB -artikkelen gir fem forskjellige tilnærminger for å gi listen over nåværende samlinger.

Hvordan hente listen over alle samlingene i MongoDB

Vi må først generere samlingen i MongoDB -databasen for å liste opp hver samling der. Deretter kan vi bruke kommandoene for å liste opp alle samlingene i den spesifikke databasen til MongoDB. Det første trinnet som kreves for å opprette samlingene i MongoDB, er å etablere databaseforbindelsen i Shell -databasen. Vi bruker "bruk" -kommandoen med navnet på databasen som "universitet". Spørringskommandoen for å opprette databasen “University” er representert i følgende:

> Bruk universitet

Etter å ha gitt spørringen til MongoDB -skallet og når du angir dannelsen av databasesøket, kan du sende ut følgende uttalelse:

byttet til DB University

Nå opprettes databasen med hell i MongoDB. Vi kan bruke denne databasen til å sette inn de forskjellige samlingene. Spørringen for å opprette samlingen i databasen er som følger der vi først oppretter "fakultetet" -samlingen. CreateCollection () -metoden tar samlingsnavnet “Fakultet”.

> DB.CreateCollection ("Fakultet")
OK: 1

Etter det oppretter vi en annen samling som har tittelen “Lærere” ved å bruke CreateCollection () -metoden til MongoDB. Utgangen bekrefter at den spesifiserte samlingen er opprettet i databasen “University”.

> DB.CreateCollection ("Lærere")
OK: 1

Deretter lager vi den tredje samlingen som er "studenter" i den samme "University" -databasen. Dette indikerer at en database kan settes inn med mange samlinger i MongoDB.

> DB.CreateCollection ("Studenter")
OK: 1

Eksempel 1: MongoDB -listeinnsamling ved hjelp av kommandoen “Show Collections”

"Show Collections" er Shell -kommandoen til MongoDB for å få tilgang til et sett med MongoDB -samlinger. Samlingene som vi legger til en MongoDB -database, er oppført av denne kommandoen. Vi utfører kommandoen "Show Collections" i MongoDB -skallet vårt som genererer alle samlingslisten i utdataene som vi opprettet i den nåværende "University" -databasen. Følgende er en representasjon av kommandoen “Show Collection”:

> Vis samlinger

Kommandoresultatet vises som følger:

Fakultet
Studenter
Lærere

Eksempel 2: MongoDB -listeinnsamling ved hjelp av kommandoen “Show Tables”

Kommandoen “Show Tables” er en annen teknikk for å få en liste over samlingene i en bestemt database. Tilnærmingen som denne kommandoen opererer er ganske lik arbeidet med "showtabellene". Kommandoen over "showtabellen" er gitt i skallet til MongoDB for å vise den tilgjengelige samlingen i "University" -databasen.

> Vis tabeller

Utgangen fra kommandoen viser tre samlinger i den for øyeblikket spesifiserte MongoDB -databasen:

Fakultet
Studenter
Lærere

Eksempel 3: MongoDB -listeinnsamling ved hjelp av “getCollectionNames ()” -kommandoen

De to foregående måtene å liste opp samlingen i MongoDB er veldig vanlige og enkle å bruke i MongoDB -skallet. Nå har vi DB.getCollectionNames () -kommando for å generere listen over de eksisterende samlingene i databasen. DB.GetCollectionNames () -kommandoen gir en matrise som inneholder navnene på hver samling og visning i den nåværende databasen. I tillegg blir samlingene valgt av brukerens myndighet når de bruker tilgangstillatelsene. Så her er DB.getCollectionNames () Kommando Eksempel for å vise hvordan denne kommandoen henter samlingene i MongoDB -skallet:

> DB.getCollectionNames ();

Samlingene er oppført i form av en matrise etter å ha utført kommandoen i skallet.

['Fakultet', 'lærere', 'Studenter']

Eksempel 4: MongoDB -listeinnsamling ved hjelp av “getCollectionInfos ()” -kommandoen

Neste metode for å få samlingslisten bruker DB.getCollectionInfos () -kommando i MongoDB -skallet. DB.getCollectionInfos () -kommando genererer også matriseutgangen som inkluderer navn og alternativer med dokumentene som inneholder innsamling eller visningsdetaljer for den gitte databasen. Vi har gitt en DB.getCollectionInfos () -kommando på mongoDB -skallet uten noe argument.

> DB.getCollectionInfos ();

DB.getCollectionInfos () -kommando uten noen parameterverdi gir ut samlingene på følgende måte:

[

Navn: 'Fakultet',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("105843B2-A0F4-412B-915A-16F984A0C78F")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'
,

Navn: 'Lærere',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("61FE78F5-F1A4-4E72-BF3B-7DF1F5B2E684")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'
,

Navn: 'Studenter',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("78C03549-72E0-4D08-A73D-AEA2EB2BFDF5")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'

]

Nå passerer vi parameteren i DB.getCollectionInfos () -kommando. Kommandoen generelt tar "filter" -parameteren som angir spørringsuttrykket for å filtrere de nåværende samlingene av databasen. Deretter er "NameOnly" den andre parameteren som bare spesifiserer samlingsnavnene fra DB.getCollectionInfos () -metode. "AutorizedColleksjon" er også en annen parameter som muliggjør utførelse av kommandoen med tilgangskontroll uten privilegiumkravet når "nameonly" -argumentet er satt til sant. “DB.getCollectionInfos () ”-kommando med den tidligere omtalte parameteren er gitt som følger:

> DB.getCollectionInfos (, sant, sant)

Følgende skjermbilde viser responsen på den nevnte spørringen:

[

Navn: 'Fakultet',
Type: 'Collection'
,

Navn: 'Lærere',
Type: 'Collection'
,

Navn: 'Studenter',
Type: 'Collection'

]

DB.getCollectionInfos () kan bare sendes med parameteren “NameOny” som vi har gitt i følgende:

> DB.getCollectionInfos (navn: "lærere", sant, sant)

Resultatene av å fjerne de to argumentene fra DB.getCollectionInfos () -metode er representert som følger:

[

Navn: 'Fakultet',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("105843B2-A0F4-412B-915A-16F984A0C78F")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'

]

Eksempel 5: MongoDB -listeinnsamling ved hjelp av “ListCollections ()” -kommandoen

ListCollections () -kommandoen gir også informasjonen som et dokument. Databasens samlingsnavn og alternativer returneres av ListCollections -kommandoen. "ListCollections" utføres i MongoDB -skallet som en parameter for DB.RunCommand (). Videre setter vi også "AutorisedCollections" og "NameOnly" -parametrene med den sanne verdien.

> DB.RunCommand (ListCollections: 1, AutorizedCollections: True, NameOnly: True)

Resultatene inneholder detaljene for å lage en markør for datainnsamling:


Markør:
ID: Lang ("0"),
NS: 'University.$ CMD.listCollections ',
Første sats: [
Navn: 'Fakultet', type: 'samling',
navn: 'lærere', skriv: 'samling',
Navn: 'Studenter', skriv: 'samling'
]
,
OK: 1

Videre er følgende en ekstra måte å implementere ListScollection -kommandoen:

> DB.RunCommand (ListCollections: 1.0)

Implementeringen av ListScollection -kommandoen gir mye informasjon angående samlingene som vist i det følgende:


Markør:
ID: Lang ("0"),
NS: 'University.$ CMD.listCollections ',
Første sats: [

Navn: 'Fakultet',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("105843B2-A0F4-412B-915A-16F984A0C78F")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'
,

Navn: 'Lærere',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("61FE78F5-F1A4-4E72-BF3B-7DF1F5B2E684")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'
,

Navn: 'Studenter',
Type: 'Collection',
Alternativer: ,
Info:
Readonly: False,
UUID: New UUID ("78C03549-72E0-4D08-A73D-AEA2EB2BFDF5")
,
idindex: v: 2, nøkkel: _id: 1, navn: '_id_'

]
,
OK: 1

Konklusjon

Vi lærte om de forskjellige måtene å få en liste over samlingene som finnes i en spesifikk database i dette innlegget ved hjelp av MongoDB -skallet. De to første kommandoene, "Show Collections" og "Show Tables", for å få samlingslisten i skallet, brukes ofte av brukeren. Det returnerte ganske enkelt listen over samlingene ved å kjøre kommandoene på MongoDB -skallet. Deretter har vi kommandoen "getCollectionNames" som viser alle samlingene i en matrisestruktur. Deretter benyttet vi GetCollectionInfos og “ListCollections” -kommandoen som også genererer listen over samlingen og informasjonen om de hentede samlingene.