In this guide, we will explain how to use the MySQL ALTER TABLE statement to add a column, modify a column, drop a column, rename a column or rename a table (with syntax and examples).
Description
The MySQL ALTER TABLE statement is used to add, modify, or drop/delete columns in a table. The MySQL ALTER TABLE statement is also used to rename a table.
Add column in table
Syntax
The syntax to add a column in a table in MySQL (using the ALTER TABLE statement) is:
ALTER TABLE table_name ADD new_column_name column_definition [ FIRST | AFTER column_name ];
table_nameThe name of the table to modify.new_column_nameThe name of the new column to add to the table.column_definitionThe datatype and definition of the column (NULL or NOT NULL, etc).FIRST | AFTER column_nameOptional. It tells MySQL where in the table to create the column. If this parameter is not specified, the new column will be added to the end of the table.
Example
Let’s look at an example that shows how to add a column in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts ADD last_name varchar(40) NOT NULL AFTER contact_id;
This MySQL ALTER TABLE example will add a column called last_name to the contacts table. It will be created as a NOT NULL column and will appear after the contact_id field in the table.
Add multiple columns in table
Syntax
The syntax to add multiple columns in a table in MySQL (using the ALTER TABLE statement) is:
ALTER TABLE table_name ADD new_column_name column_definition [ FIRST | AFTER column_name ], ADD new_column_name column_definition [ FIRST | AFTER column_name ], ... ;
table_nameThe name of the table to modify.new_column_nameThe name of the new column to add to the table.column_definitionThe datatype and definition of the column (NULL or NOT NULL, etc).FIRST | AFTER column_nameOptional. It tells MySQL where in the table to create the column. If this parameter is not specified, the new column will be added to the end of the table.
Example
Let’s look at an example that shows how to add multiple columns in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts ADD last_name varchar(40) NOT NULL AFTER contact_id, ADD first_name varchar(35) NULL AFTER last_name;
This ALTER TABLE example will add two columns to the contacts table – last_name and first_name.
The last_name field will be created as a varchar(40) NOT NULL column and will appear after the contact_id column in the table. The first_name column will be created as a varchar(35) NULL column and will appear after the last_name column in the table.
Modify column in table
Syntax
The syntax to modify a column in a table in MySQL (using the ALTER TABLE statement) is:
ALTER TABLE table_name MODIFY column_name column_definition [ FIRST | AFTER column_name ];
table_nameThe name of the table to modify.column_nameThe name of the column to modify in the table.column_definitionThe modified datatype and definition of the column (NULL or NOT NULL, etc).FIRST | AFTER column_nameOptional. It tells MySQL where in the table to position the column, if you wish to change its position.
Example
Let’s look at an example that shows how to modify a column in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts MODIFY last_name varchar(50) NULL;
This ALTER TABLE example will modify the column called last_name to be a data type of varchar(50) and force the column to allow NULL values.
Modify Multiple columns in table
Syntax
The syntax to modify multiple columns in a table in MySQL is:
ALTER TABLE table_name MODIFY column_name column_definition [ FIRST | AFTER column_name ], MODIFY column_name column_definition [ FIRST | AFTER column_name ], ... ;
table_nameThe name of the table to modify.column_nameThe name of the column to modify in the table.column_definitionThe modified datatype and definition of the column (NULL or NOT NULL, etc).FIRST | AFTER column_nameOptional. It tells MySQL where in the table to position the column, if you wish to change its position.
Example
Let’s look at an example that shows how to modify multiple columns in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts MODIFY last_name varchar(55) NULL AFTER contact_type, MODIFY first_name varchar(30) NOT NULL;
This ALTER TABLE example will modify two columns to the contacts table – last_name and first_name.
The last_name field will be changed to a varchar(55) NULL column and will appear after the contact_type column in the table. The first_name column will be modified to a varchar(30) NOT NULL column (and will not change position in the contacts table definition, as there is no FIRST | AFTER specified).
Drop column in table
Syntax
The syntax to drop a column in a table in MySQL is:
ALTER TABLE table_name DROP COLUMN column_name;
table_nameThe name of the table to modify.column_nameThe name of the column to delete from the table.
Example
Let’s look at an example that shows how to drop a column in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts DROP COLUMN contact_type;
This ALTER TABLE example will drop the column called contact_type from the table called contacts.
Rename column in table
Syntax
The syntax to rename a column in a table in MySQL is:
ALTER TABLE table_name CHANGE COLUMN old_name new_name column_definition [ FIRST | AFTER column_name ]
table_nameThe name of the table to modify.old_nameThe column to rename.new_nameThe new name for the column.column_definitionThe datatype and definition of the column (NULL or NOT NULL, etc). You must specify the column definition when renaming the column, even if it does not change.FIRST | AFTER column_nameOptional. It tells MySQL where in the table to position the column, if you wish to change its position.
Example
Let’s look at an example that shows how to rename a column in a MySQL table using the ALTER TABLE statement.
For example:
ALTER TABLE contacts CHANGE COLUMN contact_type ctype varchar(20) NOT NULL;
This MySQL ALTER TABLE example will rename the column called contact_type to ctype. The column will be defined as a varchar(20) NOT NULL column.
Rename table
Syntax
The syntax to rename a table in MySQL is:
ALTER TABLE table_name RENAME TO new_table_name;
table_nameThe table to rename.new_table_nameThe new table name to use.
Example
Let’s look at an example that shows how to rename a table in MySQL using the ALTER TABLE statement.
For example:
ALTER TABLE contacts RENAME TO people;
This ALTER TABLE example will rename the contacts table to people.
Next Topic : Click Here
Pingback: MySQL: VIEWS | Adglob Infosystem Pvt Ltd