我正在尝试使用此SQL表达式重命名MySQL社区服务器5.5.27中的列:
ItemCheckEventArgs
我也试过
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
但它说:
错误:检查与MySQL服务器版本对应的手册
答案 0 :(得分:249)
使用以下查询:
Available in OS X v10.0 and later.
ALTER TABLE tableName CHANGE `oldcolname` `newcolname` datatype(length);
函数用于Oracle数据库。
RENAME
注意用于MySQL的反引号,而双引号用于Oracle的语法。另请注意,MySQL 8.0可能不接受反引号。在这种情况下,执行不带反引号的查询,它可能会起作用。
@lad2025在下面提到它,但我认为添加他说的话会很好。谢谢@ lad2025!
您可以使用MySQL 8.0中的ALTER TABLE tableName RENAME COLUMN "oldcolname" TO "newcolname" datatype(length);
重命名您需要重命名的任何列。
RENAME COLUMN
RENAME COLUMN:
可以更改列名但不能更改其名称。
比CHANGE更方便重命名列而不更改其定义。
答案 1 :(得分:45)
在服务器版本中:5.6.34 MySQL社区服务器
ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name data_type;
答案 2 :(得分:16)
来自 MySQL 5.7参考Manual
语法
ALTER TABLE t1 CHANG a a b DATATYPE;
例如:对于客户包含COLUMN customer_name 的表, customer_street ,< strong> customercity
我们希望将 customercity 更改为 customer_city
alter table customer change customercity customer_city VARCHAR(225);
答案 3 :(得分:9)
从MySQL 8.0开始,您可以使用
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
RENAME COLUMN:
可以更改列名但不能更改其名称。
比CHANGE更方便重命名列而不更改其定义。
<强> DBFiddle Demo 强>
答案 4 :(得分:5)
您可以使用以下代码:
ALTER TABLE `dbName`.`tableName` CHANGE COLUMN `old_columnName` `new_columnName` VARCHAR(45) NULL DEFAULT NULL ;
答案 5 :(得分:3)
在mysql中,您的查询应类似于
ALTER TABLE table_name change column_1 column_2 Data_Type;
您已经在Oracle中编写了查询。
答案 6 :(得分:3)
语法:ALTER TABLE table_name更改old_column_name new_column_name数据类型;
如果表名是学生,并且列名是名称。 然后,如果您想将 Name 更改为 First_Name
ALTER TABLE Student CHANGE Name First_Name varchar(20);
答案 7 :(得分:1)
对于mysql版本5
df['recommendations'] = df.apply(lambda row : get_recommendations(row['names']), axis=1)
答案 8 :(得分:0)
在mysql中重命名列名
alter table categories change type category_type varchar(255);
答案 9 :(得分:0)
https://dev.mysql.com/doc/refman/8.0/en/alter-table.html
对于MySQL 8
alter table creditReportXml_temp change column applicationID applicantID int(11);
答案 10 :(得分:0)
ALTER TABLE 是用于更改 MySQL 表结构的基本命令。您可以使用它来添加或删除列、更改列中的数据类型,甚至重命名整个数据库。我们最关心的功能是如何利用ALTER TABLE对列进行重命名。
子句使我们能够对重命名过程进行额外的控制。 RENAME COLUMN 和 CHANGE 子句都允许更改现有列的名称。不同之处在于 CHANGE 子句还可用于更改列的数据类型。命令很简单,您可以使用最符合您要求的子句。
重命名列的最简单方法是使用带有 RENAME COLUMN 子句的 ALTER TABLE 命令。该子句自 MySQL 8.0 版起可用。
让我们来说明它的简单语法。要更改列名,请在 MySQL shell 中输入以下语句:
ALTER TABLE your_table_name RENAME COLUMN original_column_name TO new_column_name;
将 your_table_name、original_column_name 和 new_column_name 与您的表和列名称交换。请记住,您不能将列重命名为表中已存在的名称。
注意:对于 ALTER TABLE RENAME COLUMN 命令,COLUMN 一词是必需的。 ALTER TABLE RENAME 是重命名整个表的现有语法。
RENAME COLUMN 子句只能用于重命名列。如果您需要其他功能,例如更改数据定义或列的位置,则需要改用 CHANGE 子句。
CHANGE 子句为重命名过程提供了重要的补充。它可用于重命名列并使用相同的命令更改该列的数据类型。
在您的 MySQL 客户端 shell 中输入以下命令以更改列的名称及其定义:
ALTER TABLE your_table_name CHANGE original_column_name new_col_name data_type;
data_type 元素是必需的,即使您想保留现有的数据类型。
使用附加选项进一步操作表格列。 CHANGE 还允许您使用可选的 FIRST | 将列放置在表格中的不同位置。 AFTER column_name 子句。例如:
ALTER TABLE your_table_name CHANGE original_column_name new_col_name y_data_type AFTER column_x;
您已成功更改列名,将数据类型更改为 y_data_type,并将列定位在 column_x 之后。
答案 11 :(得分:0)
在 MySQL 中更改名称我们必须使用“ALTER”表命令后跟“CHANGE”。以下是查询。
ALTER TABLE tablename CHANGE COLUMN oldcolname newcolname datatype;
ALTER TABLE tablename CHANGE oldcolname newcolname datatype;
PS- 您可以在查询中添加“COLUMN”字样或忽略。它会一样工作。
“RENAME”用于 Oracle 数据库。
答案 12 :(得分:-1)
ALTER TABLE `table_name` CHANGE `$old_column_name` `new_column_name` VARCHAR(40)
这对我有用