Bird
Raised Fist0
MySQLquery~5 mins

Unique indexes in MySQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a unique index in a database?
A unique index is a database feature that ensures all values in the indexed column(s) are different. It prevents duplicate entries in those columns.
Click to reveal answer
intermediate
How does a unique index differ from a primary key?
A primary key is a unique index that also uniquely identifies each row and cannot be NULL. A unique index allows unique values but can have NULLs unless specified otherwise.
Click to reveal answer
beginner
What happens if you try to insert a duplicate value into a column with a unique index?
The database will reject the insert and return an error because the unique index enforces uniqueness and does not allow duplicates.
Click to reveal answer
beginner
How do you create a unique index on a column in MySQL?
You use the SQL command:
CREATE UNIQUE INDEX index_name ON table_name(column_name);
Click to reveal answer
intermediate
Can a unique index be created on multiple columns? What does it enforce?
Yes, a unique index can cover multiple columns. It enforces that the combination of values across those columns is unique for every row.
Click to reveal answer
What does a unique index guarantee in a database table?
AAutomatically creates a primary key
BFaster data retrieval only
CAllows duplicate values but sorts them
DNo duplicate values in the indexed column(s)
Which SQL command creates a unique index on the 'email' column of the 'users' table?
ACREATE UNIQUE INDEX idx_email ON users(email);
BCREATE INDEX idx_email ON users(email);
CALTER TABLE users ADD UNIQUE email;
DCREATE PRIMARY KEY ON users(email);
Can a unique index allow NULL values in MySQL?
AOnly one NULL is allowed
BNo, NULLs are not allowed
CYes, multiple NULLs are allowed
DNULLs are converted to empty strings
What error occurs if you insert a duplicate value into a unique indexed column?
ASyntax error
BDuplicate entry error
CTimeout error
DNo error, duplicates allowed
What is a composite unique index?
AA unique index on multiple columns combined
BA unique index on a single column
CAn index that is not unique
DA primary key index
Explain what a unique index is and why it is useful in a database.
Think about how unique indexes help keep data clean and organized.
You got /3 concepts.
    Describe how to create a unique index in MySQL and what happens if you try to insert duplicate data.
    Recall the SQL command and the database behavior on duplicates.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a UNIQUE index in MySQL?
      easy
      A. To prevent duplicate values in one or more columns
      B. To speed up data insertion
      C. To allow duplicate values in a column
      D. To delete duplicate rows automatically

      Solution

      1. Step 1: Understand the role of UNIQUE index

        A UNIQUE index ensures that no two rows have the same value in the indexed column(s).
      2. Step 2: Compare options with this definition

        Only To prevent duplicate values in one or more columns correctly states that UNIQUE prevents duplicates. Others are incorrect or unrelated.
      3. Final Answer:

        To prevent duplicate values in one or more columns -> Option A
      4. Quick Check:

        UNIQUE index = prevent duplicates [OK]
      Hint: UNIQUE means no duplicates allowed in indexed columns [OK]
      Common Mistakes:
      • Thinking UNIQUE speeds up inserts
      • Believing UNIQUE allows duplicates
      • Confusing UNIQUE with automatic deletion
      2. Which of the following is the correct syntax to create a UNIQUE index on the column email in a table named users?
      easy
      A. CREATE UNIQUE KEY idx_email FROM users(email);
      B. CREATE INDEX UNIQUE idx_email ON users(email);
      C. CREATE UNIQUE INDEX idx_email ON users(email);
      D. CREATE UNIQUE ON users INDEX idx_email(email);

      Solution

      1. Step 1: Recall correct syntax for UNIQUE index creation

        The correct syntax is: CREATE UNIQUE INDEX index_name ON table_name(column_name);
      2. Step 2: Match options with correct syntax

        CREATE UNIQUE INDEX idx_email ON users(email); matches exactly. Others have wrong keyword order or syntax errors.
      3. Final Answer:

        CREATE UNIQUE INDEX idx_email ON users(email); -> Option C
      4. Quick Check:

        CREATE UNIQUE INDEX ... ON ... (column) [OK]
      Hint: Remember: CREATE UNIQUE INDEX name ON table(column) [OK]
      Common Mistakes:
      • Swapping UNIQUE and INDEX keywords
      • Using FROM instead of ON
      • Incorrect keyword order
      3. Given the table employees with a UNIQUE index on employee_id, what happens if you run this query?
      INSERT INTO employees (employee_id, name) VALUES (101, 'Alice');
      INSERT INTO employees (employee_id, name) VALUES (101, 'Bob');
      medium
      A. The second insert fails with a duplicate key error
      B. Both rows are inserted successfully
      C. The second insert overwrites the first row
      D. The second insert is ignored silently

      Solution

      1. Step 1: Understand UNIQUE index effect on inserts

        A UNIQUE index on employee_id prevents duplicate values in that column.
      2. Step 2: Analyze the inserts

        The first insert adds employee_id 101. The second insert tries to add the same employee_id 101, violating the UNIQUE constraint, causing an error.
      3. Final Answer:

        The second insert fails with a duplicate key error -> Option A
      4. Quick Check:

        UNIQUE index blocks duplicate inserts [OK]
      Hint: Duplicate insert on UNIQUE column causes error [OK]
      Common Mistakes:
      • Assuming duplicates are allowed
      • Thinking second insert overwrites first
      • Believing second insert is ignored silently
      4. You tried to create a UNIQUE index on the column username but got an error. Which of these is the most likely cause?
      medium
      A. The table does not exist
      B. The username column contains duplicate values
      C. You forgot to specify the index name
      D. UNIQUE indexes are not supported on text columns

      Solution

      1. Step 1: Understand UNIQUE index creation requirements

        Creating a UNIQUE index requires all existing values in the column to be unique.
      2. Step 2: Identify common error causes

        If duplicates exist, MySQL throws an error when creating the UNIQUE index.
      3. Final Answer:

        The username column contains duplicate values -> Option B
      4. Quick Check:

        Duplicates block UNIQUE index creation [OK]
      Hint: Check for duplicates before creating UNIQUE index [OK]
      Common Mistakes:
      • Assuming index name is mandatory
      • Believing UNIQUE not allowed on text columns
      • Ignoring existing duplicates
      5. You want to ensure that the combination of first_name and last_name in the contacts table is unique, but duplicates are still appearing. Which is the best way to fix this?
      hard
      A. Use a CHECK constraint to prevent duplicates
      B. Create separate UNIQUE indexes on first_name and last_name individually
      C. Add a PRIMARY KEY on first_name
      D. Create a UNIQUE index on both first_name and last_name columns together

      Solution

      1. Step 1: Understand uniqueness on multiple columns

        To ensure uniqueness on a combination, a composite UNIQUE index on both columns is needed.
      2. Step 2: Analyze other options

        Separate UNIQUE indexes allow duplicates across combinations. PRIMARY KEY on one column doesn't cover both. CHECK constraints can't enforce uniqueness.
      3. Final Answer:

        Create a UNIQUE index on both first_name and last_name columns together -> Option D
      4. Quick Check:

        Composite UNIQUE index = unique pairs [OK]
      Hint: Use composite UNIQUE index for multi-column uniqueness [OK]
      Common Mistakes:
      • Creating separate UNIQUE indexes instead of composite
      • Using PRIMARY KEY on one column only
      • Relying on CHECK constraints for uniqueness
      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