ALTER TABLE is used to add, delete/drop or modify columns in the existing table. It is also used to add and drop various constraints on the existing table.
ALTER TABLE – ADD
ADD is used to add columns into the existing table. Sometimes we may require to add additional information, in that case we do not require to create the whole database again, ADD comes to our rescue.
Syntax:
ALTER TABLE table_name
ADD (Columnname_1 datatype,
Columnname_2 datatype,
…
Columnname_n datatype);
ALTER TABLE – DROP
DROP COLUMN is used to drop column in a table. Deleting the unwanted columns from the table.
Syntax:
ALTER TABLE table_name
DROP COLUMN column_name;
ALTER TABLE-MODIFY
It is used to modify the existing columns in a table. Multiple columns can also be modified at once.
*Syntax may vary slightly in different databases.
Syntax(Oracle,MySQL,MariaDB):
ALTER TABLE table_name
MODIFY column_name column_type;
Syntax(SQL Server):
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Queries
Sample Table:
Student
ROLL_NO | NAME |
1 | Ram |
2 | Abhi |
3 | Rahul |
4 | Tanu |
QUERY:
- To ADD 2 columns AGE and COURSE to table Student.
ALTER TABLE Student ADD (AGE number(3),COURSE varchar(40));
OUTPUT:
ROLL_NO | NAME | AGE | COURSE |
1 | Ram | ||
2 | Abhi | ||
3 | Rahul | ||
4 | Tanu |
- MODIFY column COURSE in table Student
ALTER TABLE Student MODIFY COURSE varchar(20);
After running the above query maximum size of Course Column is reduced to 20 from 40.
- DROP column COURSE in table Student.
ALTER TABLE Student DROP COLUMN COURSE;
OUTPUT:
ROLL_NO | NAME | AGE |
1 | Ram | |
2 | Abhi | |
3 | Rahul | |
4 | Tanu |