Is it possible to show all collections and its contents in MongoDB?
Is the only way to show one by one?
Is it possible to show all collections and its contents in MongoDB?
Is the only way to show one by one?
Once you are in terminal/command line, access the database/collection you want to use as follows:
show dbs
use <db name>
show collections
choose your collection and type the following to see all contents of that collection:
db.collectionName.find()
More info here on the MongoDB Quick Reference Guide.
Step 1: See all your databases:
show dbs
Step 2: Select the database
use your_database_name
Step 3: Show the collections
show collections
This will list all the collections in your selected database.
Step 4: See all the data
db.collection_name.find()
or
db.collection_name.find().pretty()
var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++){
print('Collection: ' + collections[i]); // print the name of each collection
db.getCollection(collections[i]).find().forEach(printjson); //and then print the json of each of its elements
}
I think this script might get what you want. It prints the name of each collection and then prints its elements in json.
Before writing below queries first get into your cmd or PowerShell
TYPE:
mongo //To get into MongoDB shell
use <Your_dbName> //For Creating or making use of existing db
To List All Collection Names use any one from below options :-
show collections //output every collection
OR
show tables
OR
db.getCollectionNames() //shows all collections as a list
To show all collections content or data use below listed code which had been posted by Bruno_Ferreira.
var collections = db.getCollectionNames();
for(var i = 0; i< collections.length; i++) {
print('Collection: ' + collections[i]); // print the name of each collection
db.getCollection(collections[i]).find().forEach(printjson); //and then print the json of each of its elements
}
This way:
db.collection_name.find().toArray().then(...function...)