Marquage des instructions SQL : backticks ou crochets carrés
Lors de la définition de noms de champs ou de noms de tables dans des instructions SQL, les développeurs les entourent souvent de caractères pour se protéger contre les mots-clés réservés ou les caractères spéciaux. Dans MySQL, cela se fait généralement avec des guillemets (``), tandis que dans SQL Server ou MS Access, des crochets ([]) sont utilisés.
Différences de compatibilité
La principale distinction entre les backticks et les crochets réside dans leur compatibilité avec les bases de données. Les backticks sont exclusifs à MySQL, tandis que les crochets sont utilisés par SQL Server/T-SQL et MS Access. Par conséquent, l'utilisation de guillemets dans SQL Server peut entraîner des erreurs de syntaxe.
Comprendre les guillemets dans MySQL
Dans MySQL, les guillemets servent de guillemet d'identification. Ils permettent aux développeurs d'entourer n'importe quel nom de table ou de champ qui, autrement, entrerait en conflit avec un mot clé réservé, respecterait la casse ou contiendrait des caractères spéciaux.
Exemple :
SELECT * FROM `select` WHERE `select`.id > 100;
Considération ANSI_QUOTES
MySQL prend également en charge la citation des identifiants entre guillemets doubles lorsque le mode SQL ANSI_QUOTES est activé.
Exemple :
SET sql_mode='ANSI_QUOTES'; CREATE TABLE "test" (col INT);
Conclusion
Bien que les guillemets et les crochets atteignent tous deux l'objectif de sauvegarder les noms de champs et de tables, leur utilisation dépend de la technologie de base de données spécifique utilisée. Pour MySQL, les backticks doivent être utilisés exclusivement, tandis que pour SQL Server ou MS Access, les crochets sont le choix approprié.
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!