上QQ阅读APP看书,第一时间看更新
2.5.6 修改字段的排列位置
对于一个数据表来说,在创建的时候,字段在表中的排列顺序就已经确定了,但表的结构也是可以改变的,可以通过ALTER TABLE来改变表中字段的相对位置。语法格式如下:
ALTER TABLE <表名> MODIFY <字段1> <数据类型> FIRST|AFTER <字段2>;
其中,“字段1”指要修改位置的字段;“数据类型”指“字段1”的数据类型;“FIRST”为可选参数,指将“字段1”修改为表的第一个字段;“AFTER 字段2”指将“字段1”插入到“字段2”后面。
1.修改字段为表的第一个字段
【例2.25】将数据表tb_deptl中的column1字段修改为表的第一个字段,SQL语句如下:
ALTER TABLE tb_dept1 MODIFY column1 VARCHAR(12) FIRST;
使用DESC查看表tb_dept1,发现字段column1已经被移至表的第一列,结果如下:
mysql> DESC tb_dept1; +-----------+-------------+-------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+-------+-----+---------+-------+ | column1 | varchar(12) | YES | | NULL | | | id | int | NO | PRI | NULL | | | name | varchar(30) | YES | | NULL | | | column3 | int | YES | | NULL | | | location | varchar(60) | YES | | NULL | | | managerId | int | YES | | NULL | | +-----------+-------------+-------+-----+---------+-------+
2.修改字段到表的指定列之后
【例2.26】将数据表tb_dept1中的column1字段插入到location字段后面,SQL语句如下:
ALTER TABLE tb_dept1 MODIFY column1 VARCHAR(12) AFTER location;
使用DESC查看表tb_dept1,结果如下:
mysql> DESC tb_dept1; +-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | id | int | NO | PRI | NULL | | | name | varchar(30) | YES | | NULL | | | column3 | int | YES | | NULL | | | location | varchar(60) | YES | | NULL | | | column1 | varchar(12) | YES | | NULL | | | managerId | int | YES | | NULL | | +-----------+-------------+------+-----+---------+-------+
可以看到,tb_dept1表中的字段column1已经被移至location字段之后。