< MySQL
Afin de distinguer les variables des mots réservés, on place les identificateurs MySQL (noms des tables, champs, et bases) entre deux accents graves (`
). Il s'agit du caractère ASCII 96, disponible sous Linux en pressant les deux touches ALT
+ '
.
Généralement il est optionnel, mais il permet de meilleurs messages d'erreur, par exemple :
mysql> SELECT user_id, group_id FROM user,group LIMIT 1;
ERROR 1064 (42000): You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near 'group LIMIT 1' at line 1
vs :
mysql> SELECT user_id, group_id FROM `user`,`group` LIMIT 1;
ERROR 1146 (42S02): Table 'savannah.group' doesn't exist
</source >
Montre qu'il manquait un ''s'' à ''group'':
<syntaxhighlight lang=sql>
mysql> SELECT user_id, group_id FROM `user`,`groups` LIMIT 1;
+---------+----------+
| user_id | group_id |
+---------+----------+
| 100 | 2 |
+---------+----------+
1 row in set (0.02 sec)
Cette syntaxe autorise l'utilisateur à employer des mots réservés dans leurs noms d'objets. On peut même utiliser des accents graves en les tapant deux fois, à la manière des caractères d'échappement :
RENAME TABLE `user` TO ````
Par contre cette syntaxe n'est pas portable, car le standard SQL recommande le guillemet ("
).
Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.