前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >修改表名列名mysql_怎么修改mysql的表名和列名?

修改表名列名mysql_怎么修改mysql的表名和列名?

作者头像
全栈程序员站长
发布2022-08-30 10:07:55
发布2022-08-30 10:07:55
11.7K0
举报

大家好,又见面了,我是你们的朋友全栈君。

在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 语句中的“新字段名”和“旧字段名”设置为相同的名称,只改变“数据类型”。提示:由于不同类型的数据在机器中的存储方式及长度并不相同,修改数据类型可能会影响数据表中已有的数据记录,因此,当数据表中已经有数据时,不要轻易修改数据类型。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145167.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档