1.重命名表名
mysql> rename table tanks to Tanks;
Query OK, 0 rows affected (0.01 sec)
# 或者
mysql> alter table Tanks rename to TANKS;
Query OK, 0 rows affected (0.01 sec)
2. 添加字段
# 插入到最后
mysql> alter table tanks add introduction varchar(255) not null;
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
# 插入到指定列后
mysql> alter table tanks add summoner_skills ENUM('flush','fire') not null default 'flush' after skills;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
3. 删除字段
mysql> alter table tanks drop summoner_skills;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
4. 字段的批量添加及删除
mysql> alter table tanks add camp varchar(50),add pic varchar(255) after price;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc tanks;
+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | 0 | |
| name | varchar(100) | NO | | NULL | |
| skills | varchar(255) | NO | | NULL | |
| price | int(11) | NO | | NULL | |
| pic | varchar(255) | YES | | NULL | |
| introduction | varchar(255) | NO | | NULL | |
| camp | varchar(50) | YES | | NULL | |
+--------------+--------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
# 发现仅指定了一个after,另外一列还在最后,删除重加
mysql> alter table tanks drop camp,drop pic;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc tanks;
+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | 0 | |
| name | varchar(100) | NO | | NULL | |
| skills | varchar(255) | NO | | NULL | |
| price | int(11) | NO | | NULL | |
| introduction | varchar(255) | NO | | NULL | |
+--------------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)
mysql> alter table tanks add camp varchar(50) after price,add pic varchar(255) after camp;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc tanks;
+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | 0 | |
| name | varchar(100) | NO | | NULL | |
| skills | varchar(255) | NO | | NULL | |
| price | int(11) | NO | | NULL | |
| camp | varchar(50) | YES | | NULL | |
| pic | varchar(255) | YES | | NULL | |
| introduction | varchar(255) | NO | | NULL | |
+--------------+--------------+------+-----+---------+-------+
7 rows in set (0.00 sec)
5. 修改字段类型(同时帮名字也给改了)
mysql> alter table tanks change pic pic_url char(200);
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0
mysql> desc tanks;
+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | 0 | |
| name | varchar(100) | NO | | NULL | |
| skills | varchar(255) | NO | | NULL | |
| price | int(11) | NO | | NULL | |
| camp | varchar(50) | YES | | NULL | |
| pic_url | char(200) | YES | | NULL | |
| introduction | varchar(255) | NO | | NULL | |
+--------------+--------------+------+-----+---------+-------+
7 rows in set (0.00 sec)