Bird
Raised Fist0
MySQLquery~20 mins

Why DML operations modify data in MySQL - Challenge Your Understanding

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
DML Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What does a DML operation do?

Which of the following best describes the purpose of Data Manipulation Language (DML) operations in a database?

AThey backup and restore the entire database.
BThey modify the data stored in existing tables.
CThey control user access and permissions.
DThey create new tables and define their structure.
Attempts:
2 left
💡 Hint

Think about what happens when you add, change, or remove rows in a table.

❓ query_result
intermediate
2:00remaining
Result of an UPDATE statement

Given the table employees with columns id, name, and salary, what will be the result of this query?

UPDATE employees SET salary = salary + 500 WHERE id = 3;

Assuming the employee with id = 3 had a salary of 3000 before, what will be the new salary?

AThe salary for employee 3 will be 3500.
BThe salary for employee 3 will be 500.
CThe salary for employee 3 will be 3000.
DThe query will cause a syntax error.
Attempts:
2 left
💡 Hint

Think about what the UPDATE statement does to the existing value.

📝 Syntax
advanced
2:00remaining
Identify the syntax error in DELETE statement

Which option contains a syntax error in the DELETE statement?

DELETE FROM employees WHERE;
ADELETE FROM employees WHERE name = 'John';
BDELETE FROM employees WHERE id = 5;
C;5 = di EREHW seeyolpme MORF ETELED
DDELETE FROM employees WHERE;
Attempts:
2 left
💡 Hint

Check if the WHERE clause is complete and valid.

❓ optimization
advanced
2:00remaining
Optimizing multiple UPDATEs

You want to increase the salary by 10% for all employees in the sales department. Which query is the most efficient?

AUPDATE employees SET salary = salary * 1.1 WHERE department = 'sales';
BUPDATE employees SET salary = salary + salary * 0.1 WHERE department = 'sales';
CUPDATE employees SET salary = salary + 10 WHERE department = 'sales';
DUPDATE employees SET salary = salary * 1.1;
Attempts:
2 left
💡 Hint

Consider which query updates only the needed rows and calculates the increase correctly.

🔧 Debug
expert
2:00remaining
Why does this INSERT fail?

Consider this INSERT statement:

INSERT INTO employees (id, name, salary) VALUES (1, 'Alice');

Why does this query fail?

ABecause the VALUES keyword is misspelled.
BBecause the id value 1 is already used.
CBecause the salary column is missing a value and has no default.
DBecause the table employees does not exist.
Attempts:
2 left
💡 Hint

Check if all columns listed have matching values.

Practice

(1/5)
1. Which of the following DML commands is used to add new rows to a table in MySQL?
easy
A. UPDATE
B. SELECT
C. DELETE
D. INSERT

Solution

  1. Step 1: Understand the purpose of DML commands

    DML commands modify data in tables by adding, changing, or removing rows.
  2. Step 2: Identify the command for adding data

    INSERT adds new rows, UPDATE changes existing rows, DELETE removes rows, and SELECT only reads data.
  3. Final Answer:

    INSERT -> Option D
  4. Quick Check:

    Add new rows = INSERT [OK]
Hint: INSERT adds rows, UPDATE changes, DELETE removes [OK]
Common Mistakes:
  • Confusing UPDATE with INSERT
  • Thinking SELECT modifies data
  • Using DELETE to add data
2. Which of the following is the correct syntax to update a user's email in a table named users?
easy
A. SELECT email = 'new@example.com' FROM users WHERE id = 5;
B. INSERT INTO users SET email = 'new@example.com' WHERE id = 5;
C. UPDATE users SET email = 'new@example.com' WHERE id = 5;
D. DELETE FROM users SET email = 'new@example.com' WHERE id = 5;

Solution

  1. Step 1: Recognize the correct DML command for changing data

    To change existing data, UPDATE is used with SET to assign new values.
  2. Step 2: Check syntax correctness

    UPDATE users SET email = 'new@example.com' WHERE id = 5; correctly updates the email for user with id 5.
  3. Final Answer:

    UPDATE users SET email = 'new@example.com' WHERE id = 5; -> Option C
  4. Quick Check:

    Update data uses UPDATE + SET + WHERE [OK]
Hint: UPDATE uses SET and WHERE to change data [OK]
Common Mistakes:
  • Using INSERT instead of UPDATE to modify data
  • Omitting WHERE clause causing all rows to update
  • Using DELETE or SELECT incorrectly
3. Given the table products with columns id, name, and price, what will be the result of this query?
UPDATE products SET price = price * 1.1 WHERE id = 3;
medium
A. The price of the product with id 3 will increase by 10%.
B. All product prices will increase by 10%.
C. The product with id 3 will be deleted.
D. Syntax error due to missing WHERE clause.

Solution

  1. Step 1: Understand the UPDATE statement with WHERE clause

    The query updates only rows where id = 3, so only that product is affected.
  2. Step 2: Analyze the price update expression

    The price is multiplied by 1.1, increasing it by 10% for the product with id 3.
  3. Final Answer:

    The price of the product with id 3 will increase by 10%. -> Option A
  4. Quick Check:

    UPDATE with WHERE affects specific rows [OK]
Hint: WHERE limits UPDATE to specific rows [OK]
Common Mistakes:
  • Assuming all rows update without WHERE
  • Confusing UPDATE with DELETE
  • Thinking syntax error occurs without WHERE
4. Identify the error in this DELETE statement:
DELETE users WHERE id = 10;
medium
A. Missing FROM keyword after DELETE.
B. WHERE clause cannot be used with DELETE.
C. DELETE cannot remove rows based on conditions.
D. Table name should be in quotes.

Solution

  1. Step 1: Recall correct DELETE syntax

    The correct syntax is DELETE FROM table_name WHERE condition;. The FROM keyword is required.
  2. Step 2: Identify the missing keyword

    The statement misses FROM after DELETE, causing a syntax error.
  3. Final Answer:

    Missing FROM keyword after DELETE. -> Option A
  4. Quick Check:

    DELETE requires FROM before table name [OK]
Hint: DELETE syntax: DELETE FROM table WHERE condition [OK]
Common Mistakes:
  • Omitting FROM keyword
  • Using DELETE without WHERE to remove specific rows
  • Quoting table names unnecessarily
5. You want to increase the salary by 5% for all employees in the employees table who work in the 'Sales' department. Which query correctly performs this update?
hard
A. DELETE FROM employees WHERE department = 'Sales';
B. UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales';
C. INSERT INTO employees SET salary = salary * 1.05 WHERE department = 'Sales';
D. UPDATE employees WHERE department = 'Sales' SET salary = salary * 1.05;

Solution

  1. Step 1: Choose the correct DML command for modifying existing data

    To change salaries, UPDATE is used, not INSERT or DELETE.
  2. Step 2: Verify correct syntax order

    The correct syntax is UPDATE table SET column = value WHERE condition;. UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales'; follows this order correctly.
  3. Final Answer:

    UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales'; -> Option B
  4. Quick Check:

    UPDATE + SET + WHERE with correct order [OK]
Hint: UPDATE SET comes before WHERE clause [OK]
Common Mistakes:
  • Using INSERT to modify data
  • Placing WHERE before SET in UPDATE
  • Deleting rows instead of updating
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