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.