我试图重命名一个列在MySQL社区服务器5.5.27使用这个SQL表达式:

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 table_name CHANGE old_column_name new_column_name columnDataType;

其他回答

ALTER TABLE table_name CHANGE old_column_name new_column_name columnDataType;

对于MySQL <= 8

ALTER TABLE table_names CHANGE `old_column_name` `new_column_name` varchar(50);

使用以下查询:

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语法: 重命名列: 可以更改列名,但不能更改其定义。 在不更改列定义的情况下重命名列比CHANGE更方便。

在mysql中,你的查询应该是这样的

ALTER TABLE table_name change column_1 column_2 Data_Type;

您已经在Oracle中编写了查询。

ALTER TABLE `table_name` CHANGE `$old_column_name` `new_column_name` VARCHAR(40)

这对我很有用