[mysql] MySQL에서 열 이름을 바꾸는 중에 오류가 발생했습니다

테이블의 열 이름을 어떻게 바꾸 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)



답변

Lone Ranger는 매우 가깝습니다. 실제로 이름이 바뀐 열의 데이터 유형도 지정해야합니다. 예를 들면 다음과 같습니다.

ALTER TABLE `xyz` CHANGE `manufacurerid` `manufacturerid` INT;

기억하십시오 :

  • INT를 열 데이터 유형 (필수)으로 바꾸십시오.
  • 틸드 / 백틱 (`)은 선택 사항입니다

답변

표준 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 구문


답변

MYSQL의 경우 :

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

오라클 :

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


답변

편집하다

다음을 사용하여 필드 이름을 바꿀 수 있습니다.

ALTER TABLE xyz CHANGE manufacurerid manufacturerid INT

http://dev.mysql.com/doc/refman/5.1/en/alter-table.html


답변

명령을 변경하는 올바른 구문은 다음과 같으므로 구문 문제가 있습니다. ALTER TABLE tablename CHANGE OldColumnName NewColunmName DATATYPE;


답변

MySQL 5.x에서는 다음을 사용할 수 있습니다.

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


답변

MySQL에서 열 이름 바꾸기 :

ALTER TABLE mytable CHANGE current_column_name new_column_name DATATYPE;