Double Possible:
Est-il une bonne raison pour utiliser des majuscules pour T-SQL de mots-clés?Doublon de: Est-il une bonne raison pour utiliser des majuscules pour T-SQL de mots-clés?
Question Simple. Personnellement, je trouve une chaîne de caractères minuscules pour être plus lisible qu'une chaîne de caractères en majuscules. Est quelques vieux/populaire goût de SQL sensible à la casse ou quelque chose?
Pour référence:
select this.Column1, case when this.Column2 is null then 0 else this.Column2 end from dbo.SomeTable this inner join dbo.AnotherTable another on this.id = another.id where this.Price > 100
vs
SELECT this.Column1, CASE WHEN this.Column2 IS NULL THEN 0 ELSE this.Column2 END FROM dbo.SomeTable this INNER JOIN dbo.AnotherTable another ON this.id = another.id WHERE this.Price > 100
L'ancien semble donc beaucoup plus lisible pour moi, mais je vois la façon le plus souvent.
EDIT: consensus Général semble être "subjectif préférence." La différenciation entre les mots clés et le texte est important, et UPPERCASING est une façon de le faire. Le codage de la couleur en est une autre.
Réponses
Trop de publicités?Je suis d'accord avec vous, pour moi, la majuscule est juste en CRIANT.
Je laisse mon IDE de la poignée rend les mots-clés démarquer, via la coloration syntaxique.
Je ne sais pas d'un historique de la raison, mais maintenant c'est juste une préférence subjective.
Edit pour de plus amples faire effacer mon raisonnement:
Souhaitez-vous en majuscules vos mots clés dans toute autre langue moderne? Composé exemple:
USING (EditForm form = NEW EditForm()) {
IF (form.ShowDialog() == DialogResult.OK) {
IF ( form.EditedThing == null ) {
THROW NEW Exception("No thing!");
}
RETURN form.EditedThing;
} ELSE {
RETURN null;
}
}
Pouah!
De toute façon, il est assez clair de la voix dont le style est de plus en plus populaire, mais je pense que nous sommes tous d'accord que c'est juste une question de préférence personnelle.
Une chose que je vais ajouter à ce que je n'ai pas vu quelqu'un porter encore:
Si vous utilisez SQL ad hoc de l'intérieur d'un langage de programmation que vous aurez beaucoup de SQL à l'intérieur de chaînes. Par exemple:
insertStatement = "INSERT INTO Customers (FirstName, LastName) VALUES ('Jane','Smith')"
Dans ce cas, la coloration de la syntaxe ne sera probablement pas le uppercasing pourrait l'aider à la lisibilité.
De Joe Celko "SQL Style de Programmation" (ISBN 978-0120887972):
La règle:
Majuscules les Mots Réservés.
Justification:
Majuscules les mots sont considérés comme une unité, plutôt que comme une série de de syllabes ou de lettres. L'œil est attiré pour eux, et ils agissent d'annoncer un déclaration ou de la clause. C'est pourquoi les titres et les signes d'avertissement de travail.
Les typographes utiliser le terme boumapour la forme d'un mot. Le terme apparaît paul Saenger du livre (1975). Imaginez chaque lettre sur une carte rectangulaire s'adapte juste, de sorte que vous voyez le ascendantes, descendantes, et de la base de des lettres différentes "briques Lego" que sont accrochés ensemble pour former un mot.
Le bouma d'un mot est en majuscules toujours simple, dense rectangle, et il est facile de repérer un champ de minuscules mots.
Ce que je trouve impressionnant, c'est que c'est le seul livre sur SQL heuristiques, écrit par un auteur bien connu SQL fonctionne. Alors, est-ce la vérité absolue? Qui sait. Il semble assez raisonnable et je peut au moins souligner la règle à un membre de l'équipe et de leur dire de le suivre (et si ils veulent blâmer qui que ce soit, je leur donne Celko à l'adresse de courriel :)
Surtout que c'est la tradition. Nous aimons garder les mots-clés et de nos espaces de noms distincts pour des raisons de lisibilité, et depuis dans de nombreux DBMSes table et les noms de colonne sont sensibles à la casse, nous ne pouvons pas en majuscules, de sorte que nous en majuscules les mots-clés.