Termes réservés dans MySQL 5.5

Dans MySQL, il y a des mots réservés pour SQL parce qu'ils désignent des commandes ou des fonctions SQL. Par conséquent, il est préférable de ne pas utiliser ces mots comme noms de base de données, de table ou de colonne. Les plus connus sont CREATE, SELECT, UPDATE et DROP.

Pour une liste complète de plus de 200 mots réservés, consultez mysql.com.

Backticks

En général, les développeurs SQL conseillent de ne pas utiliser de mots réservés à l'avenir. Si vous voulez toujours en utiliser un comme nom de table ou de colonne, vous devez mettre l'identificateur respectif entre guillemets spéciaux dans les instructions SQL, appelées backticks (``).

L'exemple suivant du mot réservé UPDATE vous montre comment utiliser correctement les backticks:

Mauvais Correct
SELECT update FROM table; SELECT `update` FROM table;

Sans les backticks, l'interpréteur SQL émettrait un message d'erreur de syntaxe, puisque "update" - bien qu'en minuscules - ne serait pas interprété comme l'identificateur de la colonne "update", mais comme la commandeSQL UPDATE.

Migrer de MySQL 5.1 vers MySQL 5.5

Plus de mots réservés sont ajoutés à chaque version de MySQL. Contrairement à MySQL 5.1, les mots SIGNAL et RESIGNAL sont désormais réservés dans MySQL 5.5. Si des erreurs de script surviennent après une migration, vérifiez si l'un de ces mots est utilisé comme nom de colonne ou de table. Si c'est le cas, corrigez les instructions SQL affectées dans vos scripts à l'aide de backticks (voir ci-dessus).