Erreur lors du renommage d’une colonne dans MySQL

Comment renommer une colonne de la table xyz ? Les colonnes sont:

 Manufacurerid, name, status, AI, PK, int 

Je veux renommer en manufacturerid

J’ai essayé d’utiliser le panneau PHPMyAdmin, mais j’ai cette erreur:

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

Lone Ranger est très proche … en fait, vous devez également spécifier le type de données de la colonne renommée. Par exemple:

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

Rappelles toi :

  • Remplacez INT par le type de données de votre colonne (OBLIGATOIRE)
  • Tilde / Backtick (`) est facultatif

L’instruction de renommage standard de Mysql est la suivante:

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

pour cet exemple:

 ALTER TABLE xyz CHANGE manufacurerid manufacturerid datatype(length) 

Référence: MYSQL 5.1 Syntaxe ALTER TABLE

POUR MYSQL:

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

POUR ORACLE:

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

MODIFIER

Vous pouvez renommer les champs en utilisant:

 ALTER TABLE xyz CHANGE manufacurerid manufacturerid INT 

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

Il existe un problème de syntaxe, car la syntaxe correcte pour modifier la commande est ALTER TABLE tablename CHANGE OldColumnName NewColunmName DATATYPE;

Avec MySQL 5.x, vous pouvez utiliser:

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

SYNTAXE

alter table nom_table renommer la colonne ancien nom de colonne en nouveau nom de colonne ;

Exemple:

modifier la bibliothèque de tables renommer le coût de la colonne en prix ;