重命名MySQL中的列时出错

ε祈祈猫儿з 提交于 2020-02-28 02:46:16

如何重命名表xyz的列? 列是:

Manufacurerid, name, status, AI, PK, int

我想重命名为manufacturerid

我尝试使用PHPMyAdmin面板,但是我收到此错误:

MySQL said: Documentation
#1025 - Error on rename of '.\shopping\#sql-c98_26' to '.\shopping\tblmanufacturer' (errno: 150)

#1楼

标准的Mysql重命名语句是:

ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name 
CHANGE [COLUMN] old_col_name new_col_name column_definition 
[FIRST|AFTER col_name]

对于这个例子:

ALTER TABLE xyz CHANGE manufacurerid manufacturerid datatype(length)

参考: MYSQL 5.1 ALTER TABLE语法


#2楼

有一个语法问题,因为alter命令的正确语法是ALTER TABLE tablename CHANGE OldColumnName NewColunmName DATATYPE;


#3楼

使用MySQL 5.x,您可以使用:

ALTER TABLE table_name
CHANGE COLUMN old_column_name new_column_name DATATYPE NULL DEFAULT NULL;

#4楼

对于MYSQL:

ALTER TABLE `table_name` CHANGE `old_name` `new_name` VARCHAR(255) NOT NULL;

对于ORACLE:

ALTER TABLE `table_name` RENAME COLUMN `old_name` TO `new_name`;

#5楼

句法

alter table table_name将列旧列名重命名为新列名 ;

例:

alter table library将列成本重命名为price ;

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!