Il semble y avoir beaucoup de développeurs qui écrivent leur SQL en capitalisant les mots clés:
SELECT column
FROM table
INNER JOIN table
ON condition
WHERE condition
GROUP BY clause
HAVING condition
Je me demande pourquoi les gens s'en tiennent à cette approche? De toute évidence, c'est une convention établie de longue date - mais je n'ai jamais rencontré de SGBDR qui nécessite une capitalisation.
Personnellement, je trouve que les MOTS CLÉS QUI CRIENT attirent l'attention sur exactement la mauvaise partie de la requête, c'est pourquoi j'écris les mots clés en minuscules.
Pourtant, suffisamment de gens utilisent cette convention pour que je suppose que je manque quelque chose, d'où cette question.
sql
history
coding-standards
Bevan
la source
la source
SHOUT
les commandes de l'interpréteur SQL ...Réponses:
La mise en majuscule les fait ressortir, contrairement aux autres caractères qui se trouvent dans la fenêtre de requête.
La raison pour laquelle je ne fais pas ça car c'est un énorme gaspillage de temps. Vous pouvez effectuer l'une des deux opérations suivantes:
1) Maintenez la touche Maj enfoncée tout en tapant le mot : beaucoup trop sujet aux erreurs et juste au hasard.
2) Mettez le verrouillage des majuscules pour la durée du mot : un peu trop de temps.
J'utilise SQL Server et l'environnement (SSMS) a une excellente mise en évidence de la syntaxe, donc je ne pense pas personnellement que la capitalisation des mots clés soit aussi courante ces jours-ci qu'elle l'était (le cas échéant).
C'est une bonne pratique dans les livres et les didacticiels en ligne, cependant, il est donc évident quels sont les mots clés réservés. Ce n'est qu'une de ces choses non écrites.
la source
Je trouve que ce type de capitalisation fournit un moyen rapide et facile de décomposer visuellement les différentes parties de la requête. Ceci, combiné à une bonne indentation, peut aider à la lisibilité et à la compréhension de la logique.
Que cela ait ou non quelque chose à voir avec la façon dont la norme a été élaborée, je ne sais pas. Mais c'est mon expérience personnelle.
la source
Il y a bien longtemps, les mots-clés n'étaient en aucun cas mis en évidence lorsque vous écriviez du code, donc c'était une tentative pour aider les gens à faire la différence entre les parties SQL et les parties objets de base de données des requêtes, cela aurait pu aller dans le sens inverse, mais les objets ont tendance à avoir des noms plus longs, ce qui les rend plus difficiles à capitaliser et certaines conventions de dénomination des objets étaient spécifiques au cas.
Personnellement, je trouve cela aussi facile à lire s'ils ne sont pas en majuscules, mais beaucoup de gens sont tellement habitués à les lire de cette façon, cela les déstabilise si vous ne les capitalisez pas.
la source
SQL est un langage orienté clause, bien plus que tout ce que j'ai pu expérimenter. Vous avez votre clause SELECT, et votre clause FROM, et vos clauses JOIN et votre clause WHERE. COMMANDER PAR, GROUPE PAR, etc., etc.
La mise en majuscule de ces mots clés vous aide à séparer visuellement les clauses distinctes. Ceci est particulièrement pratique dans l'une de ces situations de débogage délicates où vous sortez votre SQL dans un commentaire HTML, puis copiez-collez dans une console. Méchant, mais nous y sommes tous allés. Il est bon d'avoir de l'aide pour voir où commence chaque élément de la déclaration.
la source
Comme cela a été souligné, avec les anciens IDE, vous n'aviez pas beaucoup d'options en plus de la casse pour différencier le texte. Comme vous le faites remarquer, faire ressortir les mots clés détourne votre attention de l'endroit où elle devrait être. Le problème est que vous savez que les mots clés peuvent toujours être capitalisés, tandis que les autres éléments peuvent contenir des littéraux et des identificateurs qui respectent la casse. Cela conduit à la voie de moindre résistance étant de simplement capitaliser les mots clés.
la source
Dans mon cas, je préfère mettre en majuscule les mots clés, indépendamment de la coloration syntaxique. Imaginez que vous ne disposez pas d'un éditeur SQL approprié et que vous devez écrire / modifier ou ouvrir vos scripts dans le Bloc-notes ou WordPad. Ces éditeurs n'ont pas de coloration syntaxique.
Je ne fais pas très attention à la coloration syntaxique de SQL Server pour la même raison que je l'ai décrite ci-dessus, mais c'est utile (ça m'ennuie de voir tout le code en noir). J'ai toujours utilisé des majuscules pour distinguer les mots clés de mes variables, constantes, noms, etc.
la source