J'essaie de renommer une colonne dans le serveur de communauté MySQL 5.5.27 en utilisant cette expression SQL:
ALTER TABLE table_name RENAME COLUMN old_col_name TO new_col_name;
J'ai aussi essayé
ALTER TABLE table_name RENAME old_col_name TO new_col_name;
Mais ça dit:
Erreur: consultez le manuel qui correspond à la version de votre serveur MySQL
Réponses:
Utilisez la requête suivante:
La
RENAME
fonction est utilisée dans les bases de données Oracle.Notez les backticks utilisés pour MySQL, tandis que les guillemets doubles sont utilisés pour la syntaxe d'Oracle. Notez également que MySQL 8.0 peut ne pas accepter les backticks. Dans ce cas, exécutez la requête sans backticks et cela fonctionnera probablement.
@ lad2025 le mentionne ci-dessous, mais j'ai pensé qu'il serait bien d'ajouter ce qu'il a dit. Merci @ lad2025!
Vous pouvez utiliser
RENAME COLUMN
dans MySQL 8.0 pour renommer n'importe quelle colonne que vous devez renommer.la source
CHANGE
change la colonne d'une table et son type. Les documents MYSQL indiquent:Attributes present in the original definition but not specified for the new definition are not carried forward.
. Cela signifie que vous devez spécifier les définitions de table ou elles ne seront pas utilisées pour cette colonne. Si vous souhaitez uniquement modifier le type de données d'une colonne, il vous suffit de laisser de côté lenewcolname
In MySQL, the quote character is the backtick. If the SQL mode ANSI_QUOTES is set, double quotes can also be used to quote the identifiers. In Oracle, identifiers are quoted using double quotation marks.
Aaaand édité. J'ai besoin de café .."
place de`
?MYSQL STATUS
montremysql Ver 14.14 Distrib 5.7.27, for Linux (x86_64) using EditLine wrapper
), je reçoisError 1064 (42000): You have an error in your SQL Syntax;...near 'COLUMN thread_id TO threadId'...
pour la requêteALTER TABLE comment RENAME COLUMN thread_id TO threadId;
. J'ai également essayé d'ajouter des backticks`
. J'ai fini par utiliserCHANGE
.Dans la version serveur: 5.6.34 MySQL Community Server
la source
Depuis le manuel de référence MySQL 5.7 .
Syntaxe:
par exemple: pour la clientèle TABLE ayant COLONNE customer_name , customer_street , customercity .
Et nous voulons changer customercity À customer_city :
la source
Depuis MySQL 8.0, vous pouvez utiliser
DBFiddle Demo
la source
Vous pouvez utiliser le code suivant:
la source
Renommer le nom de la colonne dans mysql
la source
https://dev.mysql.com/doc/refman/8.0/en/alter-table.html
Pour MySQL 8
la source
Syntaxe: ALTER TABLE nom_table CHANGE ancien_nom_colonne nouveau_nom_colonne type de données;
Si le nom de la table est Student et le nom de la colonne est Name . Ensuite, si vous voulez changer le nom en First_Name
la source
pour mysql version 5
alter table *table_name* change column *old_column_name* *new_column_name* datatype();
la source
Dans mysql, votre requête devrait être comme
vous avez écrit la requête dans Oracle.
la source