« MySQL/Spécifier les noms » : différence entre les versions

Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 9 :
for the right syntax to use near 'group LIMIT 1' at line 1
 
vs :
But this one is better:
mysql> SELECT user_id, group_id FROM `user`,`group` LIMIT 1;
ERROR 1146 (42S02): Table 'savannah.group' doesn't exist
 
Montre qu'il manquait un ''s'' à ''group'':
Ok, it was just a missing <code>s</code>:
mysql> SELECT user_id, group_id FROM `user`,`groups` LIMIT 1;
+---------+----------+
Ligne 22 :
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 es tapant deux fois, à la manière des caractères d'échappement :
This syntax allows the user to use reserved words and some illegal characters in objects' names. It is even possible to use backquotes by typing it twice:
<source lang=sql>
 
RENAME TABLE `user` TO ````
</source>
 
Par contre cette syntaxe n'est pas portable, car le standard SQL recommande le guillemet (<code>"</code>).
 
However, this is not a portable syntax. The SQL standard recommends the use of a double quote (<code>"</code>). If you want to write portable SQL quote, do not quote the identifiers. But is there something like portable SQL, even remotely?
 
[[en:MySQL/Language/Specifying names]]