Bird
Raised Fist0
MongoDBquery~5 mins

Database and collection creation in MongoDB - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

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
Recall & Review
beginner
How do you create a new database in MongoDB?
In MongoDB, you create a new database by switching to it using use databaseName. The database is created when you first store data in it.
Click to reveal answer
beginner
What command creates a new collection explicitly in MongoDB?
Use db.createCollection('collectionName') to create a new collection explicitly.
Click to reveal answer
beginner
True or False: In MongoDB, a database is created immediately when you switch to it with use.
False. The database is created only when you insert the first document into a collection within that database.
Click to reveal answer
beginner
What happens if you insert a document into a collection that does not exist in MongoDB?
MongoDB automatically creates the collection and the database (if not existing) when you insert the first document.
Click to reveal answer
intermediate
Explain the difference between creating a collection explicitly and implicitly in MongoDB.
Explicit creation uses db.createCollection(). Implicit creation happens automatically when you insert a document into a non-existing collection.
Click to reveal answer
Which command switches to a database named 'shop' in MongoDB?
Ause shop
Bdb.shop()
Ccreate database shop
Dswitch shop
How do you explicitly create a collection named 'products'?
Adb.products.insert()
Buse products
Ccreate collection products
Ddb.createCollection('products')
When is a MongoDB database actually created?
AWhen you run <code>use</code> command
BWhen you create a collection explicitly
CWhen you insert the first document
DWhen you start the MongoDB server
What happens if you insert a document into a non-existing collection?
ACollection and database are created automatically
BError is thrown
CNothing happens
DYou must create collection first
Which of these is NOT a way to create a collection in MongoDB?
AUsing db.createCollection()
BUsing SQL CREATE TABLE command
CInserting a document into a new collection
DSwitching to a new database with use command
Describe the process of creating a new database and collection in MongoDB.
Think about what happens when you insert data.
You got /3 concepts.
    Explain the difference between implicit and explicit collection creation in MongoDB.
    One is manual, the other automatic.
    You got /3 concepts.

      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

      1. Step 1: Understand the use command

        The use command in MongoDB switches the current database context to the specified database.
      2. 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.
      3. Final Answer:

        It switches to the database named 'myDatabase' or creates it if it doesn't exist. -> Option C
      4. 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

      1. Step 1: Identify the MongoDB command for collection creation

        The correct MongoDB command to create a collection is db.createCollection('collectionName').
      2. Step 2: Match the syntax with the options

        db.createCollection('users') matches the correct syntax exactly for creating a collection named 'users'.
      3. Final Answer:

        db.createCollection('users') -> Option A
      4. 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

      1. 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.
      2. Step 2: Create a collection named 'products'

        The command db.createCollection('products') creates a new collection called 'products' inside 'shopDB'.
      3. 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'].
      4. Final Answer:

        ['products'] -> Option D
      5. 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

      1. Step 1: Check syntax of createCollection command

        The collection name must be a string, so it requires quotes around it.
      2. Step 2: Identify the error in the command

        The command db.createCollection(users) is missing quotes around 'users', causing a syntax error.
      3. Final Answer:

        Missing quotes around collection name 'users'. -> Option A
      4. 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

      1. 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.
      2. Step 2: Create the collection 'books' inside 'libraryDB'

        Using db.createCollection('books') creates the collection named 'books' in the current database context.
      3. Final Answer:

        use libraryDB db.createCollection('books') -> Option B
      4. 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
      • Using SQL syntax like 'create database'
      • Confusing collection and database names