It changes the structure of an existing table, such as adding, deleting, or modifying columns.
Click to reveal answer
beginner
How do you add a new column named age of type INT to a table called users?
Use: ALTER TABLE users ADD COLUMN age INT;
Click to reveal answer
intermediate
How can you rename a column fullname to full_name in MySQL?
Use: ALTER TABLE table_name CHANGE fullname full_name datatype; where you specify the datatype again.
Click to reveal answer
beginner
What is the command to drop (delete) a column named address from a table customers?
Use: ALTER TABLE customers DROP COLUMN address;
Click to reveal answer
intermediate
How do you change the data type of a column price to DECIMAL(10,2) in MySQL?
Use: ALTER TABLE table_name MODIFY COLUMN price DECIMAL(10,2);
Click to reveal answer
Which SQL command adds a new column to an existing table?
ADROP TABLE COLUMN
BALTER TABLE ADD COLUMN
CINSERT INTO TABLE
DCREATE TABLE ADD COLUMN
✗ Incorrect
The correct syntax to add a column is using ALTER TABLE with ADD COLUMN.
How do you remove a column named 'email' from a table 'contacts'?
AALTER TABLE contacts DROP COLUMN email;
BDELETE COLUMN email FROM contacts;
CALTER TABLE contacts REMOVE email;
DDROP TABLE contacts.email;
✗ Incorrect
The correct syntax to remove a column is ALTER TABLE with DROP COLUMN.
To rename a column in MySQL, which keyword is used?
ACHANGE
BRENAME COLUMN
CMODIFY
DALTER COLUMN
✗ Incorrect
MySQL uses CHANGE to rename a column and requires the datatype to be specified.
Which command changes the data type of a column?
AALTER TABLE DROP
BALTER TABLE RENAME
CALTER TABLE ADD
DALTER TABLE MODIFY
✗ Incorrect
MODIFY is used to change the data type or definition of a column.
What happens if you run ALTER TABLE table_name ADD COLUMN new_col VARCHAR(50);?
ARenames the table to new_col
BDeletes the column new_col
CAdds a new column named new_col with type VARCHAR(50)
DChanges the data type of new_col
✗ Incorrect
This command adds a new column named new_col with the specified type.
Explain how to add, rename, and delete columns in a MySQL table using ALTER TABLE.
Think about the keywords ADD, CHANGE, and DROP with ALTER TABLE.
You got /3 concepts.
Describe the difference between MODIFY and CHANGE in ALTER TABLE operations.
One is for renaming, the other for changing type.
You got /2 concepts.
Practice
(1/5)
1. What does the ALTER TABLE statement do in MySQL?
easy
A. It changes the structure of an existing table without deleting data.
B. It deletes all data from a table permanently.
C. It creates a new table with specified columns.
D. It backs up the database automatically.
Solution
Step 1: Understand the purpose of ALTER TABLE
The ALTER TABLE command is used to change the structure of an existing table, such as adding or removing columns, without deleting the data inside.
Step 2: Compare with other options
Options A, B, and D describe different commands: creating tables, deleting data, or backing up, which are not the purpose of ALTER TABLE.
Final Answer:
It changes the structure of an existing table without deleting data. -> Option A
Quick Check:
ALTER TABLE modifies table structure [OK]
Hint: ALTER TABLE changes structure, not data content [OK]
Common Mistakes:
Confusing ALTER TABLE with DELETE or DROP commands
Thinking ALTER TABLE creates new tables
Assuming ALTER TABLE backs up data
2. Which of the following is the correct syntax to add a new column named age of type INT to a table called users?
easy
A. ALTER TABLE users ADD age;
B. ALTER users ADD age INT;
C. ALTER TABLE users ADD COLUMN age INT;
D. ALTER TABLE ADD COLUMN age INT TO users;
Solution
Step 1: Recall correct ALTER TABLE syntax for adding columns
The correct syntax is: ALTER TABLE table_name ADD COLUMN column_name datatype; The keyword COLUMN is optional but recommended.
Step 2: Check each option
ALTER TABLE users ADD COLUMN age INT; matches the correct syntax. ALTER users ADD age INT; misses TABLE keyword. ALTER TABLE users ADD age; misses datatype. ALTER TABLE ADD COLUMN age INT TO users; has wrong order.
Final Answer:
ALTER TABLE users ADD COLUMN age INT; -> Option C
Quick Check:
ADD COLUMN syntax = ALTER TABLE users ADD COLUMN age INT; [OK]
Hint: Use ALTER TABLE table ADD COLUMN col datatype [OK]
Common Mistakes:
Omitting TABLE keyword
Forgetting datatype for new column
Incorrect order of keywords
3. Given the table employees with columns id INT, name VARCHAR(50), what will be the result of this query?
ALTER TABLE employees DROP COLUMN name;
medium
A. The table employees will be deleted.
B. The data in the name column will be set to NULL but column remains.
C. A syntax error will occur because DROP COLUMN is invalid.
D. The column name will be removed from the table.
Solution
Step 1: Understand DROP COLUMN in ALTER TABLE
Using DROP COLUMN removes the specified column and all its data from the table structure permanently.
Step 2: Analyze the query effect
The query removes the 'name' column from 'employees'. It does not delete the table or cause syntax errors.
Final Answer:
The column name will be removed from the table. -> Option D
Quick Check:
DROP COLUMN removes column and data [OK]
Hint: DROP COLUMN deletes column, not table [OK]
Common Mistakes:
Thinking DROP COLUMN deletes the whole table
Assuming DROP COLUMN sets data to NULL only
Believing DROP COLUMN causes syntax error
4. You run this command:
ALTER TABLE orders MODIFY COLUMN order_date VARCHAR(20);
But get an error. What is the likely cause?
medium
A. The MODIFY COLUMN syntax is incorrect in MySQL.
B. The column order_date does not exist in the table.
C. VARCHAR(20) is not a valid data type.
D. You cannot change a column's data type with ALTER TABLE.
Solution
Step 1: Check MODIFY COLUMN syntax validity
MySQL supports MODIFY COLUMN to change a column's data type, so syntax is correct.
Step 2: Identify possible causes of error
If the column does not exist, MySQL throws an error. VARCHAR(20) is valid, so the likely cause is the column missing.
Final Answer:
The column order_date does not exist in the table. -> Option B
Quick Check:
Nonexistent column causes MODIFY error [OK]
Hint: Check column exists before MODIFY COLUMN [OK]
Common Mistakes:
Assuming MODIFY COLUMN syntax is wrong
Thinking data type change is not allowed
Ignoring column existence
5. You want to rename the column username to user_name in the accounts table and change its type to VARCHAR(100). Which command is correct?
hard
A. ALTER TABLE accounts CHANGE username user_name VARCHAR(100);
B. ALTER TABLE accounts RENAME COLUMN username TO user_name VARCHAR(100);
C. ALTER TABLE accounts MODIFY username TO user_name VARCHAR(100);
D. ALTER TABLE accounts RENAME username user_name VARCHAR(100);
Solution
Step 1: Understand renaming columns in MySQL
MySQL uses CHANGE to rename a column and optionally change its type: CHANGE old_name new_name datatype.
Step 2: Evaluate each option
ALTER TABLE accounts CHANGE username user_name VARCHAR(100); uses correct CHANGE syntax. ALTER TABLE accounts RENAME COLUMN username TO user_name VARCHAR(100); uses invalid RENAME COLUMN syntax for MySQL. Options C and D use incorrect keywords.
Final Answer:
ALTER TABLE accounts CHANGE username user_name VARCHAR(100); -> Option A
Quick Check:
CHANGE renames and modifies column [OK]
Hint: Use CHANGE old_col new_col datatype to rename and modify [OK]
Common Mistakes:
Using RENAME COLUMN which is not supported in MySQL
Confusing MODIFY with renaming
Omitting datatype when using CHANGE
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.