Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Create a MongoDB Database and Collection
📖 Scenario: You are setting up a new MongoDB database for a small bookstore. You need to create the database and a collection to store book information.
🎯 Goal: Create a MongoDB database called bookstore and a collection inside it called books.
📋 What You'll Learn
Create a database named bookstore
Create a collection named books inside the bookstore database
💡 Why This Matters
🌍 Real World
Creating databases and collections is the first step in organizing data for any application that uses MongoDB, such as inventory systems, content management, or user data storage.
💼 Career
Database administrators and backend developers often create and manage MongoDB databases and collections to store and retrieve application data efficiently.
Progress0 / 4 steps
1
Create the bookstore database
Switch to the MongoDB database named bookstore using the command use bookstore.
MongoDB
Hint
Use the use command to switch to the database.
2
Create the books collection
Create a collection named books in the bookstore database using db.createCollection('books').
MongoDB
Hint
Use db.createCollection('books') to create the collection.
3
Verify the collection creation
List all collections in the bookstore database using show collections to confirm books exists.
MongoDB
Hint
Use show collections to see all collections in the current database.
4
Insert a sample document into books
Insert a sample book document into the books collection using db.books.insertOne({ title: 'The Great Gatsby', author: 'F. Scott Fitzgerald' }).
MongoDB
Hint
Use db.books.insertOne() to add a document to the collection.
Practice
(1/5)
1. What does the command use myDatabase do in MongoDB?
easy
A. It deletes the database named 'myDatabase'.
B. It creates a collection named 'myDatabase'.
C. It switches to the database named 'myDatabase' or creates it if it doesn't exist.
D. It lists all collections in the current database.
Solution
Step 1: Understand the use command
The use command in MongoDB switches the current database context to the specified database.
Step 2: Behavior when database does not exist
If the specified database does not exist, MongoDB creates it when you first store data in it.
Final Answer:
It switches to the database named 'myDatabase' or creates it if it doesn't exist. -> Option C
Quick Check:
use databaseName switches or creates database [OK]
Hint: Remember: use switches or creates database [OK]
Common Mistakes:
Thinking use creates collections
Confusing database and collection commands
Assuming use deletes databases
2. Which of the following is the correct syntax to create a new collection named users in the current database?
easy
A. db.createCollection('users')
B. create collection users
C. db.users.create()
D. use users
Solution
Step 1: Identify the MongoDB command for collection creation
The correct MongoDB command to create a collection is db.createCollection('collectionName').
Step 2: Match the syntax with the options
db.createCollection('users') matches the correct syntax exactly for creating a collection named 'users'.
Final Answer:
db.createCollection('users') -> Option A
Quick Check:
Use db.createCollection('name') to create collections [OK]
Hint: Use db.createCollection('name') to create collections [OK]
Common Mistakes:
Using SQL-like syntax such as 'create collection users'
Trying to create collection with db.users.create()
Using use users to create collection
3. What will be the result of running these commands in order?
use shopDB
db.createCollection('products')
db.getCollectionNames()
medium
A. Error: createCollection not found
B. ['shopDB']
C. []
D. ['products']
Solution
Step 1: Switch to or create the database 'shopDB'
The use shopDB command switches to the database named 'shopDB'. If it doesn't exist, it will be created when data is added.
Step 2: Create a collection named 'products'
The command db.createCollection('products') creates a new collection called 'products' inside 'shopDB'.
Step 3: List collections in the current database
db.getCollectionNames() returns an array of collection names in the current database. Since 'products' was created, it returns ['products'].
Final Answer:
['products'] -> Option D
Quick Check:
Created collection appears in db.getCollectionNames() [OK]
Hint: Created collections appear in db.getCollectionNames() [OK]
Common Mistakes:
Expecting database name in collection list
Assuming collections list is empty after creation
Confusing collection names with database names
4. Identify the error in this MongoDB command sequence:
use testDB
db.createCollection(users)
medium
A. Missing quotes around collection name 'users'.
B. The use command is incorrect.
C. The collection name cannot be 'users'.
D. The command createCollection does not exist.
Solution
Step 1: Check syntax of createCollection command
The collection name must be a string, so it requires quotes around it.
Step 2: Identify the error in the command
The command db.createCollection(users) is missing quotes around 'users', causing a syntax error.
Final Answer:
Missing quotes around collection name 'users'. -> Option A
Quick Check:
Collection names must be strings in quotes [OK]
Hint: Always put collection names in quotes in createCollection [OK]
Common Mistakes:
Omitting quotes around collection names
Misusing use command syntax
Thinking collection names cannot be common words
5. You want to create a new database called libraryDB and inside it a collection named books. Which sequence of commands will achieve this correctly?
hard
A. create database libraryDB
create collection books
B. use libraryDB
db.createCollection('books')
C. use books
db.createCollection('libraryDB')
D. db.createCollection('libraryDB.books')
Solution
Step 1: Switch to or create the database 'libraryDB'
The command use libraryDB switches to the database named 'libraryDB'. If it doesn't exist, it will be created when data is added.
Step 2: Create the collection 'books' inside 'libraryDB'
Using db.createCollection('books') creates the collection named 'books' in the current database context.
Final Answer:
use libraryDB
db.createCollection('books') -> Option B
Quick Check:
Switch database then create collection [OK]
Hint: Switch database first, then create collection inside it [OK]
Common Mistakes:
Trying to create database and collection in one command