DINSERT INTO table (id, name) VALUES (1, 'Bob', 25);
✗ Incorrect
Option B correctly specifies columns and matching values.
What error occurs if you insert a row with a duplicate primary key?
ANo error, row is added
BSyntax error
CData type mismatch
DUnique constraint violation
✗ Incorrect
Primary keys must be unique; duplicates cause a unique constraint violation.
Is it mandatory to specify column names in an INSERT INTO statement?
ANo, if you provide values for all columns in order
BYes, always mandatory
COnly for tables with one column
DOnly for tables with primary keys
✗ Incorrect
You can omit column names if you provide values for all columns in the correct order.
Explain how to insert a single row into a SQL table and why specifying column names is helpful.
Think about the syntax and benefits of naming columns.
You got /3 concepts.
What happens if you try to insert a row with a duplicate primary key? How can you avoid this?
Consider the role of primary keys in uniqueness.
You got /4 concepts.
Practice
(1/5)
1. What does the SQL statement INSERT INTO students (name, age) VALUES ('Alice', 20); do?
easy
A. Deletes the student named Alice from the students table.
B. Adds a new student named Alice aged 20 to the students table.
C. Updates the age of all students to 20.
D. Creates a new table named students with columns name and age.
Solution
Step 1: Understand the INSERT INTO statement
The statement adds data to an existing table by specifying columns and values.
Step 2: Match columns and values
The columns are name and age, and the values are 'Alice' and 20, so a new row is added with these values.
Final Answer:
Adds a new student named Alice aged 20 to the students table. -> Option B
Quick Check:
INSERT INTO adds one row [OK]
Hint: INSERT INTO adds one row with matching columns and values [OK]
Common Mistakes:
Confusing INSERT with DELETE or UPDATE
Not matching columns and values order
Using wrong quotes for text values
2. Which of the following is the correct syntax to insert a single row into the table employees with columns id and name?
easy
A. INSERT employees (id, name) VALUES (1, 'John');
B. INSERT INTO employees (id, name) SET (1, 'John');
C. INSERT INTO employees VALUES id=1, name='John';
D. INSERT INTO employees (id, name) VALUES (1, 'John');
Solution
Step 1: Recall correct INSERT syntax
The correct syntax requires the keywords INSERT INTO, table name, columns in parentheses, then VALUES with matching values.
Step 2: Check each option
INSERT INTO employees (id, name) VALUES (1, 'John'); matches the correct syntax exactly; others have missing INTO, wrong assignment, or SET keyword which is invalid here.
Final Answer:
INSERT INTO employees (id, name) VALUES (1, 'John'); -> Option D
Quick Check:
INSERT INTO ... VALUES (...) is correct syntax [OK]
Hint: Always use INSERT INTO table (columns) VALUES (values) [OK]
Common Mistakes:
Omitting INTO keyword
Using SET instead of VALUES
Incorrect assignment inside VALUES
3. Given the table products with columns product_id (integer) and product_name (text), what will be the result of this query?
INSERT INTO products (product_id, product_name) VALUES (101, 'Pen');
medium
A. A new row with product_id 101 and product_name 'Pen' is added to products.
B. The query returns an error because product_name is text and needs double quotes.
C. The query updates product_id 101 to have product_name 'Pen'.
D. No change happens because INSERT INTO requires multiple rows.
Solution
Step 1: Understand the INSERT INTO effect
The query adds one new row with specified values to the products table.
Step 2: Check syntax and data types
Text values use single quotes in SQL, so 'Pen' is correct. No error occurs.
Final Answer:
A new row with product_id 101 and product_name 'Pen' is added to products. -> Option A
Quick Check:
INSERT INTO adds one row with given values [OK]
Hint: Text values need single quotes; INSERT adds one row [OK]
Common Mistakes:
Using double quotes for text values
Thinking INSERT updates existing rows
Believing INSERT requires multiple rows
4. Identify the error in this SQL statement:
INSERT INTO orders (order_id, customer) VALUES (123, John);
medium
A. The table name orders is invalid.
B. Missing parentheses around the VALUES keyword.
C. Missing single quotes around the text value John.
D. Using double quotes instead of single quotes for John.
Solution
Step 1: Check the VALUES clause
The value John is a text string and must be enclosed in single quotes in SQL.
Step 2: Verify other syntax parts
Parentheses around VALUES are correct; table name orders is valid; double quotes are not used here.
Final Answer:
Missing single quotes around the text value John. -> Option C
Quick Check:
Text values need single quotes [OK]
Hint: Text values must be in single quotes [OK]
Common Mistakes:
Forgetting quotes around text
Using double quotes instead of single
Misplacing parentheses
5. You have a table users with columns id (integer), username (text), and email (text). Which SQL statement correctly inserts a new user with id 5, username 'maria', and email 'maria@example.com'?
hard
A. INSERT INTO users (id, username, email) VALUES (5, 'maria', 'maria@example.com');
B. INSERT INTO users VALUES (5, maria, maria@example.com);
C. INSERT INTO users (id, username, email) VALUES ('5', 'maria', maria@example.com);
D. INSERT INTO users (id, username, email) SET (5, 'maria', 'maria@example.com');
Solution
Step 1: Match columns and values correctly
The columns id, username, and email are listed, so values must be in the same order and properly quoted.
Step 2: Check value types and syntax
Integer 5 does not need quotes, text values 'maria' and 'maria@example.com' need single quotes. INSERT INTO users (id, username, email) VALUES (5, 'maria', 'maria@example.com'); matches this exactly.
Final Answer:
INSERT INTO users (id, username, email) VALUES (5, 'maria', 'maria@example.com'); -> Option A
Quick Check:
Match columns and values with correct quotes [OK]
Hint: Match columns and values; quote text, not numbers [OK]
Common Mistakes:
Not quoting text values
Using SET instead of VALUES
Quoting integers unnecessarily
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.