怎么修改mysql的表名和列名?
在mysql中,可以通过“ALTER TABLE 旧表名 RENAME 新表名;”语句来修改表名,通过“ALTER TABLE 表名 CHANGE 旧字段名/列名 新字段名/列名 新数据类型;”语句来修改列名。
修改mysql的表名
MySQL 通过 ALTER TABLE 语句来实现表名的修改,语律例则如下:
ALTER TABLE <旧表名> RENAME [TO] <新表名>;
其中,TO 为可选参数,使用与否均不影响结果。
例 1
使用 ALTER TABLE 将数据表 student 改名为 tb_students_info,SQL 语句和运转结果如下所示。
mysql> ALTER TABLE student RENAME TO tb_students_info; Query OK, 0 rows affected (0.01 sec) mysql> SHOW TABLES; +------------------+ | Tables_in_test | +------------------+ | tb_students_info | +------------------+ 1 row in set (0.00 sec)
提醒:修改表名并不修改表的构造,因此修改名称后的表和修改名称前的表的构造是雷同的。会员可以使用 DESC 命令查看修改后的表构造,
修改mysql的列名(字段名)
MySQL 数据表是由行和列构成的,平常把表的“列”称为字段(Field),把表的“行”称为记载(Record)。
MySQL 中修改表字段名的语律例则如下:
ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;
其中:
旧字段名:指修改前的字段名;
新字段名:指修改后的字段名;
新数据类型:指修改后的数据类型,假如不需要修改字段的数据类型,可以将新数据类型设定成与本来一样,但数据类型不克不及为空。
例 2
使用 ALTER TABLE 修改表 tb_emp1 的构造,将 col1 字段名称改为 col3,同时将数据类型变为 CHAR(30),SQL 语句和运转结果如下所示。
mysql> ALTER TABLE tb_emp1 -> CHANGE col1 col3 CHAR(30); Query OK, 0 rows affected (0.76 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> DESC tb_emp1; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | col3 | char(30) | YES | | NULL | | | id | int(11) | YES | | NULL | | | name | varchar(30) | YES | | NULL | | | deptId | int(11) | YES | | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 5 rows in set (0.01 sec)
CHANGE 也可以只修改数据类型,实现和 MODIFY 一样的结果,办法是将 SQL 语句中的“新字段名”和“旧字段名”设定为雷同的名称,只改动“数据类型”。
提醒:由于不一样类型的数据在机器中的储备方式及长度并不雷同,修改数据类型大概会影响数据表中已有的数据记载,因此,当数据表中已经有数据时,不要轻易修改数据类型。
引荐教程:mysql视频教程
以上就是如何修改mysql的表名和列名?的具体内容,更多请关注百分百源码网其它相关文章!