修改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: 0mysql> 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的表名和列名?的详细内容。
