Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens des erreurs de syntaxe lorsque j'utilise des mots réservés comme noms de table ou de colonne MySQL ?

Pourquoi est-ce que j'obtiens des erreurs de syntaxe lorsque j'utilise des mots réservés comme noms de table ou de colonne MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-15 00:30:12264parcourir

Why Do I Get Syntax Errors When Using Reserved Words as MySQL Table or Column Names?

Erreur de syntaxe due à l'utilisation d'un mot réservé comme nom de table ou de colonne dans MySQL

Le problème

Dans MySQL, certains mots ont une signification particulière, ce qui rend illégal leur utilisation comme identifiants tels que les noms de tables, noms de colonnes, etc., sauf s'ils sont entourés de guillemets. Cette restriction s'applique aux mots clés tels que SELECT, INSERT, DELETE et autres.

Options de solution

1. Évitez d'utiliser des mots réservés comme identifiants

Pour plus de simplicité, envisagez d'utiliser des noms alternatifs pour les tableaux ou les colonnes qui ne correspondent pas aux mots réservés. Cela élimine le risque d'erreurs de syntaxe et garantit la portabilité entre les dialectes SQL.

2. Utilisez des backticks pour échapper aux mots réservés

Si l'utilisation d'un mot réservé est nécessaire, il peut être échappé en l'entourant de backticks (`). Ceci informe MySQL que l'identifiant doit être traité comme une chaîne de texte ordinaire, et non comme un mot-clé.

Par exemple, pour corriger l'erreur mentionnée dans la question :

INSERT INTO user_details (username, location, `key`)
VALUES ('Tim', 'Florida', 42);

En ajoutant des backticks autour le mot-clé clé, la requête devient syntaxiquement correcte.

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