Les traits d'union peuvent-ils être utilisés dans les noms de champs de tables MySQL ?
Lors de l'utilisation de tables MySQL, les noms de champs contenant des caractères tels que des traits d'union peuvent poser des problèmes. Cela se produit généralement lorsqu'un système CMS tiers utilise des ID de champ comme noms de champ de table. Bien que la plupart des champs fonctionnent correctement, des problèmes surviennent lorsque le CMS ajoute « ds- » avant un identifiant de champ spécifique.
Pour résoudre ce problème et permettre aux noms de champs de contenir des traits d'union (par exemple "ds-product"), MySQL propose une solution appelée identifiants délimiteurs. Ces identifiants permettent d'utiliser une variété de caractères dans les noms de champs, notamment la ponctuation, les caractères spéciaux et même les mots réservés SQL.
Utiliser l'identifiant délimiteur
Pour utiliser un identifiant délimiteur, entourez le nom du champ en question de guillemets (`) dans MySQL, ou de guillemets doubles ("") en SQL standard. Par exemple :
<code class="language-sql">SELECT * FROM `ds-product`; -- MySQL SELECT * FROM "ds-product"; -- 标准 SQL</code>
Définir le mode SQL ANSI_QUOTES
Une autre option (spécifique à MySQL) consiste à définir le mode SQL ANSI_QUOTES. Ce mode permet l'utilisation de guillemets doubles pour séparer les noms de champs.
<code class="language-sql">SET SQL_MODE = ANSI_QUOTES; SELECT * FROM "ds-product";</code>
Les utilisateurs de MySQL peuvent gérer efficacement les tables avec des champs contenant des traits d'union ou d'autres caractères non traditionnels en utilisant des identifiants délimiteurs ou en définissant le mode SQL ANSI_QUOTES. Cette flexibilité améliore la personnalisation et la convivialité du schéma de base de données.
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!