我正在尝试使用此SQL表达式重命名MySQL社区服务器5.5.27中的列:
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
Run Code Online (Sandbox Code Playgroud)
我也试过了
ALTER TABLE table_name RENAME old_col_name TO new_col_name;
Run Code Online (Sandbox Code Playgroud)
但它说:
错误:检查与MySQL服务器版本对应的手册
Riz*_*kel 323
使用以下查询:
ALTER TABLE tableName CHANGE `oldcolname` `newcolname` datatype(length);
Run Code Online (Sandbox Code Playgroud)
该RENAME函数用于Oracle数据库.
ALTER TABLE tableName RENAME COLUMN "oldcolname" TO "newcolname" datatype(length);
Run Code Online (Sandbox Code Playgroud)
注意用于MySQL的反引号,而双引号用于Oracle的语法.另请注意,MySQL 8.0可能不接受反引号.在这种情况下,执行没有反引号的查询,它可能会工作.
@ lad2025在下面提到它,但我认为添加他说的话会很好.谢谢@ lad2025!
您可以使用RENAME COLUMNMySQL 8.0中的命名重命名任何需要重命名的列.
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
Run Code Online (Sandbox Code Playgroud)
RENAME COLUMN:
可以更改列名但不能更改其定义.
比CHANGE更方便重命名列而不更改其定义.
Kan*_*nke 55
在服务器版本中:5.6.34 MySQL社区服务器
ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name data_type;
Run Code Online (Sandbox Code Playgroud)
Ash*_*coN 23
来自MySQL 5.7参考手册
句法
ALTER TABLE t1 CHANGE ab DATATYPE;
例如:对于具有COLUMN customer_name,customer_street,customercity的 Customer TABLE
我们要改变customercity TO customer_city
alter table customer change customercity customer_city VARCHAR(225);
Run Code Online (Sandbox Code Playgroud)
Luk*_*zda 14
从MySQL 8.0你可以使用
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
Run Code Online (Sandbox Code Playgroud)
RENAME COLUMN:
可以更改列名但不能更改其定义.
比CHANGE更方便重命名列而不更改其定义.
小智 11
ALTER TABLE `table_name` CHANGE `$old_column_name` `new_column_name` VARCHAR(40)
Run Code Online (Sandbox Code Playgroud)
这对我有用
小智 6
您可以使用以下代码:
ALTER TABLE `dbName`.`tableName` CHANGE COLUMN `old_columnName` `new_columnName` VARCHAR(45) NULL DEFAULT NULL ;
Run Code Online (Sandbox Code Playgroud)