Bird
Raised Fist0
MySQLquery~5 mins

Database creation and selection in MySQL - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Database creation and selection
O(n)
Understanding Time Complexity

When we create or select a database, the system performs some work behind the scenes.

We want to understand how this work grows as the number of databases increases.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


CREATE DATABASE example_db;
USE example_db;
    

This code creates a new database named 'example_db' and then selects it for use.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Checking if the database name already exists and registering the new database.
  • How many times: This check happens once per database creation, not repeated in a loop.
How Execution Grows With Input

As the number of databases grows, the system needs to check existing names to avoid duplicates.

Input Size (number of databases)Approx. Operations
10About 10 checks
100About 100 checks
1000About 1000 checks

Pattern observation: The work grows roughly in direct proportion to the number of existing databases.

Final Time Complexity

Time Complexity: O(n)

This means the time to create a database grows linearly with the number of databases.

Common Mistake

[X] Wrong: "Creating a database always takes the same time no matter how many databases exist."

[OK] Correct: The system must check existing databases to avoid duplicates, so more databases mean more checks.

Interview Connect

Understanding how simple commands scale helps you explain system behavior clearly and shows you think about efficiency.

Self-Check

"What if the system used a fast lookup like a hash table to check database names? How would the time complexity change?"

Practice

(1/5)
1. What does the CREATE DATABASE command do in MySQL?
easy
A. It selects a database to use.
B. It deletes an existing database.
C. It creates a new database to store data.
D. It shows all databases available.

Solution

  1. Step 1: Understand the purpose of CREATE DATABASE

    This command is used to make a new database where you can store tables and data.
  2. Step 2: Differentiate from other commands

    Deleting databases uses DROP DATABASE, selecting uses USE, and showing uses SHOW DATABASES.
  3. Final Answer:

    It creates a new database to store data. -> Option C
  4. Quick Check:

    CREATE DATABASE = create new database [OK]
Hint: Remember: CREATE makes new, USE picks existing [OK]
Common Mistakes:
  • Confusing CREATE with USE command
  • Thinking CREATE deletes databases
  • Mixing CREATE with SHOW DATABASES
2. Which of the following is the correct syntax to select a database named shop in MySQL?
easy
A. SELECT DATABASE shop;
B. CHOOSE DATABASE shop;
C. OPEN DATABASE shop;
D. USE shop;

Solution

  1. Step 1: Recall the command to select a database

    In MySQL, the command to start using a database is USE database_name;.
  2. Step 2: Check each option's syntax

    Only USE shop; is valid syntax. Others are incorrect commands.
  3. Final Answer:

    USE shop; -> Option D
  4. Quick Check:

    USE selects database [OK]
Hint: Use USE to pick your database [OK]
Common Mistakes:
  • Using SELECT instead of USE
  • Trying OPEN or CHOOSE commands (not valid)
  • Missing semicolon at end
3. What will be the result of the following commands?
CREATE DATABASE testdb;
USE testdb;
SHOW TABLES;
medium
A. Lists all tables in the database 'testdb'.
B. Shows an error because 'testdb' does not exist.
C. Creates a table named 'testdb'.
D. Shows all databases available.

Solution

  1. Step 1: Create and select the database

    The command CREATE DATABASE testdb; makes a new database named 'testdb'. Then USE testdb; selects it for use.
  2. Step 2: Show tables in the selected database

    SHOW TABLES; lists all tables in the current database. Since 'testdb' is empty, it will show an empty list but no error.
  3. Final Answer:

    Lists all tables in the database 'testdb'. -> Option A
  4. Quick Check:

    SHOW TABLES lists tables in current DB [OK]
Hint: SHOW TABLES lists tables in current database [OK]
Common Mistakes:
  • Thinking SHOW TABLES shows databases
  • Assuming error because database is new
  • Confusing CREATE DATABASE with CREATE TABLE
4. Identify the error in the following MySQL commands:
CREATE DATABASE mydb
USE mydb;
medium
A. Database name 'mydb' is invalid.
B. Missing semicolon after CREATE DATABASE statement.
C. USE command cannot follow CREATE DATABASE.
D. CREATE DATABASE should be lowercase.

Solution

  1. Step 1: Check syntax of each command

    MySQL commands must end with a semicolon. The first line misses a semicolon after CREATE DATABASE mydb.
  2. Step 2: Verify other parts

    The database name 'mydb' is valid, USE can follow CREATE DATABASE, and case does not matter for commands.
  3. Final Answer:

    Missing semicolon after CREATE DATABASE statement. -> Option B
  4. Quick Check:

    Semicolon ends commands [OK]
Hint: Always end SQL commands with semicolon [OK]
Common Mistakes:
  • Forgetting semicolon at end of statements
  • Thinking database names must be uppercase
  • Believing USE cannot follow CREATE DATABASE
5. You want to create two databases named sales and inventory, then select sales to work with. Which sequence of commands is correct?
hard
A. CREATE DATABASE sales; CREATE DATABASE inventory; USE sales;
B. USE sales; CREATE DATABASE sales; CREATE DATABASE inventory;
C. CREATE DATABASE sales, inventory; USE sales;
D. CREATE DATABASE sales; USE inventory; CREATE DATABASE inventory;

Solution

  1. Step 1: Create both databases separately

    Each database must be created with its own CREATE DATABASE command ending with a semicolon.
  2. Step 2: Select the 'sales' database to use

    After creating, use USE sales; to select the 'sales' database for work.
  3. Final Answer:

    CREATE DATABASE sales; CREATE DATABASE inventory; USE sales; -> Option A
  4. Quick Check:

    Create each DB then USE the one you want [OK]
Hint: Create each DB separately, then USE the desired one [OK]
Common Mistakes:
  • Trying to create multiple databases in one command
  • Using USE before creating the database
  • Selecting wrong database after creation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard