175 votes

Existe-t-il une bonne raison d'utiliser des majuscules pour les mots-clés SQL?

La valeur par défaut semble être en majuscules, mais est-il vraiment aucune raison d'utiliser des majuscules pour les mots clés? J'ai commencé à utiliser des majuscules parce que j'étais juste essayer de correspondre à ce que SQL Server me donne à chaque fois que j'ai essayé de créer quelque chose, comme une nouvelle procédure stockée. Mais ensuite, je me sens mal pour mon bébé (5e) doigt qui a toujours besoin d'maintenez la touche Maj touche alors j'ai arrêté d'utiliser des majuscules. Aucune raison pourquoi je devrais retourner à l'majuscules?

Edit: Merci pour les réponses les gars. Je n'étais pas de la programmation mais à l'époque où COBOL était le roi, alors je n'étais pas au courant de cela. Je vais rester avec moins de cas à partir de maintenant.

188voto

Gordon Bell Points 5798

PERSONNELLEMENT, JE N'AIME PAS MON SQL M'ENGAGER. CELA ME RESTE DE BASIC OU DE COBOL.

Je préfère donc mon T-SQL en minuscule avec les noms d'objet de base de données MixedCase.

Il est beaucoup plus facile à lire, et les littéraux et les commentaires se démarquent.

141voto

Mitch Wheat Points 169614

C'est juste une question de style, probablement à l'époque où les éditeurs ne coloraient pas le code.

J'avais l'habitude de préférer les majuscules, mais je me penche maintenant vers toutes les basses.

138voto

bignose Points 6573

Contrairement à beaucoup de nouveaux langages, SQL dispose d'un grand nombre de mots-clés et s'appuie sur la distinction des mots-clés à partir des identificateurs afin de mentalement analyser la syntaxe. La réponse directe à votre question, alors, est plus une réponse à "pourquoi le lecteur de code SQL bénéficier autant de majuscules des mots-clés, quand ce n'est pas aussi vrai pour la plupart des langues modernes?":

  • De s'appuyer sur la tenue des mots clés dans la tête de chacun est raisonnable pour de nombreuses langues modernes, mais déraisonnable pour SQL; il a trop de mots clés, et de trop nombreuses variantes.

  • Compter sur la ponctuation des indices est raisonnable pour la plupart des langues modernes, mais déraisonnable pour SQL; il a trop peu, plutôt que selon l'ordre précis des mots-clés pour indiquer la syntaxe.

  • Compter sur automatique surligneurs pour distinguer des mots-clés est raisonnable pour les langues vivantes dans les cas habituels, mais ignore la réalité de ce que surligneurs pouvez obtenir pour SQL. La plupart ne couvrent pas tous les mots clés de toutes les variantes de SQL, et indépendamment, le SQL est fréquemment et régulièrement lire dans les contextes où un surligneur ne va pas aider.

Ce sont quelques raisons spécifiques à SQL, que le lecteur de code SQL est mieux servi par la standardisation sur des majuscules pour les mots clés, et en utilisant seulement la non-supérieur (c'est à dire plus bas, ou mixte) pour les identificateurs.

Soulignant peut parfois aider. Mais seulement si le surligneur sait que vous avez SQL; et nous avons très souvent SQL dans un contexte où l'éditeur/formateur peut pas raisonnablement savoir qu'il s'agit de SQL. Les exemples incluent en ligne de requêtes, le programmeur de la documentation, et des chaînes de texte dans le code d'une autre langue. Ce n'est pas vrai n'importe où près aussi souvent pour des langages comme Python ou C++; oui, leur code n'apparaissent parfois dans ces lieux, mais il n'est pas fait de façon systématique la façon dont il est avec le code SQL.

Aussi, le lecteur sera habituellement à l'aide d'un surligneur qui connaît seulement un sous-ensemble des mots clés de votre SQL spécifique à la mise en œuvre utilise. Nombreux sont le moins commun des mots-clés ne seront pas mis en évidence, sauf par celui qui connaît votre SQL variante intimement. De sorte que le lecteur, même s'ils sont à l'aide d'un surligneur, a encore besoin de quelques façon plus directe de distinguer des mots clés dans toute modérément complexes d'une instruction SQL.

Ainsi, le lecteur sera souvent – et l'auteur ne peut pas savoir à l'avance quand cela sera – besoin d'aide à partir du contenu de l'instruction SQL lui-même, à savoir ce qui est prévu par l'écrivain comme un mot-clé et ce qui est conçu comme un identifiant. De sorte que le SQL contenu lui-même doit distinguer des mots-clés pour le lecteur, et en utilisant des majuscules des mots-clés est le classique et utile de le faire.

41voto

notJim Points 5142

Exemples de Gordon Bell sont pas tout à fait corrects ; en règle générale, seuls les mots clés sont mis en évidence, pas la totalité de la requête. Son deuxième exemple ressemblerait à :

Je trouve cela beaucoup plus facile à lire, car les mots clés ressortent plus. Même avec la coloration syntaxique, je trouve que l’exemple modaux est beaucoup plus difficile à lire.

Dans mon entreprise, nous allons un peu plus loin avec notre mise en forme de SQL.

27voto

AaronLS Points 12720

Moins de 10 % des lettres dans le texte que nous lisons sont majuscules. Par conséquent, nos cerveaux est plus enclin à reconnaître les lettres minuscules que majuscules ceux. Des études ont montré qu'il prend plus de temps pour lire les majuscules. Voici juste un exemple :

http://www.Guardian.co.uk/Media/Mind-your-Language/2010/oct/04/New-York-Street-Signs-Capitals

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X