Mysql method to add columns to a table: 1. Use "ALTER TABLE table name ADD new field name data type [constraints];" to add columns at the end; 2. Use "ALTER TABLE table name ADD new Field Name Data Type [Constraint] FIRST;" Add columns at the beginning.
MySQL data table is composed of rows and columns, usually The "columns" of the table are called fields, and the "rows" of the table are called records. As your business changes, you may need to add new fields to existing tables.
MySQL allows adding fields at the beginning, middle and end.
Add fields at the end
A complete field includes field name, data type and constraints. The syntax format for adding fields in MySQL is as follows:
ALTER TABLE <表名> ADD <新字段名><数据类型>[约束条件];
Copy after login
The syntax format is explained as follows:
is the name of the data table;
is the name of the field to be added;
is the field that can store data Data type;
[Constraints] is optional and is used to constrain the added fields.
This syntax format adds a new field at the last position of the table (after the last column) by default.
Note: In this section we only add new fields and do not pay attention to its constraints.
Example 1
Create a new student data table in the test database. The SQL statements and running results are as follows:
mysql> USE test;
Database changed
mysql> CREATE TABLE student (
-> id INT(4),
-> name VARCHAR(20),
-> sex CHAR(1));
Query OK, 0 rows affected (0.09 sec)
Copy after login
Use DESC to view students The table structure, SQL statements and running results are as follows:
mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(4) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
Copy after login
Use the ALTER TABLE statement to add an INT type field age, the SQL statements and running results are as follows:
mysql> ALTER TABLE student ADD age INT(4);
Query OK, 0 rows affected (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0
Copy after login
Use DESC to view the student table structure, Verify whether the age field is added successfully. The SQL statement and running results are as follows:
mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(4) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| age | int(4) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
Copy after login
As you can see from the running results, the age field has been added to the student table, and the field is at the last position of the table. The field was added successfully.
Add fields at the beginning
MySQL defaults to adding a new field at the last position of the table. If you want to add a new field at the beginning (before the first column ) to add a new field, you can use the FIRST keyword, the syntax format is as follows:
ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] FIRST;
Copy after login
The FIRST keyword is generally placed at the end of the statement.
Example 2
Use the ALTER TABLE statement to add the INT type field stuId in the first column of the table. The SQL statement and running results are as follows.
You can see from the running results that the stuId field has been added to the student table, and the field is at the first position in the table. The field was added successfully.
Add fields in the middle
In addition to allowing fields to be added at the beginning and end of the table, MySQL also allows fields to be added in the middle ( After the specified field), you need to use the AFTER keyword. The syntax format is as follows:
ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] AFTER <已经存在的字段名>;
Copy after login
The function of AFTER is to add a new field after an existing field.
Note that you can only add a new field after an existing field, but not in front of it.
Example 3
Use the ALTER TABLE statement to add a field named stuno with data type INT in the student table. The stuno field is located after the name field. The SQL statement and running results are as follows:
As can be seen from the running results, the stuId field has been added to the student table, and the field is located behind the name field. The field was added successfully.
The above is the detailed content of How to add columns (fields) to a table in mysql?. For more information, please follow other related articles on the PHP Chinese website!
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn