我试图使用以下SQL表达式重命名MySQL community server 5.5.27中的一列:

ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;

我也试过了

ALTER TABLE table_name RENAME old_col_name TO new_col_name;

但它说:

错误:判断与MySQL服务器版本对应的手册

推荐答案

使用以下查询:

ALTER TABLE tableName CHANGE oldcolname newcolname datatype(length);

RENAME函数用于Oracle数据库.

ALTER TABLE tableName RENAME COLUMN oldcolname TO newcolname datatype(length);

下面有@lad2025条提到,但我想最好能补充一下他说的话.谢谢@lad2025!

您可以使用MySQL 8.0中的RENAME COLUMN来重命名任何需要重命名的列.

ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;

ALTER TABLE Syntax:

  • 可以更改列名,但不能更改其定义.
  • 重命名列而不更改其定义比更改更方便.

Mysql相关问答推荐

是否有一种方法可以在mysql中设置一列,使其自动成为该行的行号的值?

为什么我的带有索引字段和非索引字段的 Select 有时需要很长时间

为什么 MAX 函数通过调用在 group 中生成正确的结果

外部磁盘上的MySQL表空间和数据文件

我在连接到 mysql 的 node js 中收到错误消息发送到客户端后无法设置标头

MySQL如何将字符串列表与子查询进行比较

MySQL Procedure 变量在 count(*) 上接收 null

如何使用 DBD::mysql 判断 MySQL 服务是否正在运行

获取 MySQL 中每一行之间负差的总和

SQL 根据多行值获取记录

访问 nodejs、mysql 和 json 中的嵌套对象数组

在 where 子句中左连接多个值

如何判断嵌套查询返回的元组中的每个条目是否相同?

使用 MySQL LIMIT、OFFSET 进行分页

重新加载 .env 变量而不重新启动服务器(Laravel 5,共享主机)

PDO:MySQL 服务器已消失

INSERT ... 使用 WHERE 进行重复的密钥更新?

在 MySQL Workbench EER 图中的多个列上创建唯一约束

MySQL与空值比较

MySQL在哪里存储数据库文件?