MySQL 重命名表名 2种方法

今天用 phpMyAdmin 创建了一张表后,发现“表名字“取得有点后悔,想直接删除重新创建一个,但是这个表的字段又有点多,居然有30多个字段,后来就找到了MySQL表重命名的方法,也可以说是MySQL修改表名称。

先创建一张表:

-- 创建用户表
CREATE TABLE user10(
id SMALLINT UNSIGNED KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
email VARCHAR(50) NOT NULL DEFAULT a@a.com,
age TINYINT UNSIGNED DEFAULT 18,
addr VARCHAR(200) NOT NULL DEFAULT 北京,
salary FLOAT(6,2),
regTime INT UNSIGNED,
face CHAR(100) NOT NULL DEFAULT default.jpg,
sex ENUM(男,女,保密) DEFAULT 保密
);

我现在想把表名改成 user11 怎么办?有两种办法,具体如下:

第一种方法:

-- 修改表名, TO 或AS都可以,也以省略掉
-- ALTER TABLE 表名 RENAME [TO|AS] 新表名
ALTER TABLE user10 RENAME TO user11;

查看一下,可以看到表名成功修改成user11了:

mysql> show tables;
+-----------------+
| Tables_in_mydb3 |
+-----------------+
| cms_cate        |
| cms_news        |
| course          |
| test1           |
| test2           |
| test3           |
| user            |
| user1           |
| user11          |
+-----------------+
9 rows in set (0.01 sec)

第二种方法: 现在使用第二种方法将 user11 再改回 user10:

-- 修改表名
-- RENAME TABLE 表名 TO 新表名; 这里面的TO不可以省略
RENAME TABLE user11 TO user10;

查看一下,是否修改成功?结果如下:

mysql> show tables;
+-----------------+
| Tables_in_mydb3 |
+-----------------+
| cms_cate        |
| cms_news        |
| course          |
| test1           |
| test2           |
| test3           |
| user            |
| user1           |
| user10          |
+-----------------+
9 rows in set (0.00 sec)

MySQL 重命名表名 2种方法 :https://www.fujieace.com/mysql/rename-table-2.html

经验分享 程序员 微信小程序 职场和发展