在MySQL中重命名表

Ani*_*kal 271 mysql database table-rename

重命名表在MySQL中不起作用

RENAME TABLE group TO member;
Run Code Online (Sandbox Code Playgroud)

错误消息是

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1
Run Code Online (Sandbox Code Playgroud)

对我来说,查询在其他表上运行正常,但不适用于表group.

Joa*_*son 454

group是MySQL中的一个关键字(GROUP BY的一部分),你需要用反引号将它包围起来,以显示你希望它被解释为表名的MySQL:

RENAME TABLE `group` TO `member`;
Run Code Online (Sandbox Code Playgroud)

添加(见评论) - 这些不是单引号.

  • 是的,你需要后面的勾号`而不是单引号'我从习惯中做了单引号,并得到了错误,但也许这会拯救别人10秒 (48认同)
  • 或者不要对表或列使用关键字。 (3认同)
  • 不要对表或列使用关键字。 (2认同)

小智 123

请试试

RENAME TABLE  `oldTableName` TO  `newTableName`
Run Code Online (Sandbox Code Playgroud)


小智 31

重命名表的mysql查询是

Rename Table old_name TO new_name
Run Code Online (Sandbox Code Playgroud)

在您的查询中,您使用了MySQL中的哪个关键字.创建表,字段名称等时,尽量避免使用mysql关键字作为名称.


Nee*_*mar 21

ALTER TABLE old_table_name RENAME new_table_name;
Run Code Online (Sandbox Code Playgroud)

要么

RENAME TABLE old_table_name TO new_table_name;
Run Code Online (Sandbox Code Playgroud)


Has*_*mal 18

在MySQL中重命名表:

ALTER TABLE current_name RENAME new_name;
Run Code Online (Sandbox Code Playgroud)

  • 欢迎来到SO.请阅读[how-to-answer](http://stackoverflow.com/help/how-to-answer)以提供高质量的答案.只是显示代码不是一个好习惯. (5认同)

小智 14

group - 是MySQL中的保留字,这就是你看到这样的错误的原因.

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1
Run Code Online (Sandbox Code Playgroud)

你需要将表名包装成反引号:

RENAME TABLE `group` TO `member`;
Run Code Online (Sandbox Code Playgroud)


uma*_*ar_ 13

ALTER TABLE `group` RENAME `member`
Run Code Online (Sandbox Code Playgroud)

group是关键字,因此您必须将其括起来 group


A.A*_*man 10

表名更改

RENAME TABLE old_table_name TO new_table_name;
Run Code Online (Sandbox Code Playgroud)


Koe*_*ech 9

RENAME TABLE tb1 TO tb2;
Run Code Online (Sandbox Code Playgroud)

tb1 - 当前表名.tb2 - 您希望调用表的名称.


HA *_*A S 9

对于Mysql 5.6.18使用下面的命令

ALTER TABLE `old_table` RENAME TO `new_table`

此外,如果出现错误提示“.... 在 RENAME TO ... 附近”,请尝试删除勾号 `


use*_*679 7

根据mysql docs:“重命名TEMPORARY表,RENAME TABLE不起作用。请ALTER TABLE改用。”

因此,这是最可移植的方法:

ALTER TABLE `old_name` RENAME `new_name`;
Run Code Online (Sandbox Code Playgroud)


Moh*_*eek 6

尝试其中任何一个

RENAME TABLE `group` TO `member`;
Run Code Online (Sandbox Code Playgroud)

要么

ALTER TABLE `group` RENAME `member`;
Run Code Online (Sandbox Code Playgroud)


Sus*_*tri 5

重命名表
语法在 MySQL 中重命名表的语法是:

ALTER TABLE table_name
RENAME TO new_table_name;
Run Code Online (Sandbox Code Playgroud)

示例
让我们看一个示例,展示如何使用 ALTER TABLE 语句重命名 MySQL 中的表。
或示例:

ALTER TABLE contacts
RENAME TO people;
Run Code Online (Sandbox Code Playgroud)