我试图重命名一个列在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服务器版本对应的手册
我试图重命名一个列在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 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 <= 8
ALTER TABLE table_names CHANGE `old_column_name` `new_column_name` varchar(50);
https://dev.mysql.com/doc/refman/8.0/en/alter-table.html
MySQL 8
alter table creditReportXml_temp change column applicationID applicantID int(11);
如果你使用gui SQL SMS
您可以执行db -> Tables -> Table -> columns ->列要重命名
右键单击并重命名
从MySQL 8.0你可以使用
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
ALTER TABLE语法: 重命名列: 可以更改列名,但不能更改其定义。 在不更改列定义的情况下重命名列比CHANGE更方便。
DBFiddle演示
mysql 5
Alter table *table_name* change column *old_column_name* *new_column_name* datatype();