Maison >base de données >tutoriel mysql >Comment puis-je renommer un champ de table MySQL pour inclure un trait d'union ?

Comment puis-je renommer un champ de table MySQL pour inclure un trait d'union ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-09 16:02:42495parcourir

How Can I Rename a MySQL Table Field to Include a Hyphen?

Solution pour renommer les champs de table MySQL contenant des traits d'union

L'inclusion de tirets directement dans les noms de champs de table MySQL n'est pas autorisée. En effet, MySQL utilise la notation par points pour faire référence aux colonnes du tableau et les traits d'union ne sont pas autorisés dans la notation par points.

Cependant, il existe deux manières de contourner cette limitation :

Utiliser le délimiteur

Vous pouvez utiliser des délimiteurs tels que des guillemets (`) ou des guillemets doubles (") pour entourer les noms de champs contenant des caractères spéciaux. Par exemple :

<code class="language-sql">ALTER TABLE my_table CHANGE COLUMN `product` `ds-product` VARCHAR(255);</code>

Dans cet exemple, le nom du champ ds-product est entouré de guillemets, lui permettant de contenir des traits d'union.

Utiliser le mode SQL ANSI_QUOTES

Une autre option consiste à activer le mode SQL ANSI_QUOTES, qui permet l'utilisation de guillemets doubles comme délimiteurs pour les identifiants. Lorsque ce mode est activé, les champs peuvent être renommés en utilisant la syntaxe suivante :

<code class="language-sql">SET SQL_MODE = ANSI_QUOTES;
ALTER TABLE my_table CHANGE COLUMN "product" "ds-product" VARCHAR(255);</code>

Notez que vous devez définir le mode ANSI_QUOTES avant de renommer les champs.

Après avoir utilisé l'une des méthodes ci-dessus, vous pouvez renommer le champ et l'utiliser dans les requêtes sans rencontrer d'erreurs de « colonne inconnue ».

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn