Comment créer des mots clés SSMS en majuscules

23

J'ai récemment commencé à utiliser Management Studio 2012. Lors de l'utilisation de MySQL Workbench, une fonctionnalité pratique était que je pouvais rester tout en minuscules et tout mot réservé (comme SELECT, INSERT) se convertissait automatiquement en majuscules. Comment répliquer ce comportement dans SSMS?

David Folksman
la source
3
Quelqu'un d'autre trouve-t-il cela vraiment impossible? Devant taper MAJ pour les mots réservés puis taper à nouveau les noms de variables etc? Cela ralentit vraiment ma frappe.
David Folksman
Bien sûr, il est toujours possible de ne pas mettre les mots clés en majuscules. Pas aussi facile à lire, mais vous n'avez pas besoin d'appuyer sur la touche Maj. :)
Kenneth Fisher
wow revenons à cela. Comment ajouter des publicités à ce post haha!
David Folksman

Réponses:

28

Non, Management Studio ne dispose de cette fonctionnalité native dans aucune version de 2005 à 2016 CTP 3.2. Vous voudrez peut-être consulter des compléments tiers, comme le pack d'outils SSMS de Mladen Prajdić ou l'invite SQL de Red-Gate , qui ont tous deux la capacité de formater un bloc de code, y compris automatiquement les mots clés en majuscule. Cependant, je ne connais aucun outil qui le fera automatiquement lors de la frappe.

Pour moi, je le fais depuis si longtemps, cela vient naturellement, et ne pas appuyer Shiftme ralentirait réellement. Lorsque j'obtiens le code de quelqu'un d'autre où les mots-clés sont en minuscules, je sélectionne soit le bloc entier soit les sections incriminées, et je tape Ctrl+ Shift+ U. Si je dois mettre en surbrillance toute la section, je vais ensuite dans les noms d'objet / colonne et j'utilise IntelliSense pour les caser correctement (j'ai un vrai blocage pour m'assurer que tous les mots clés sont en majuscules et que tous les noms d'entités correspondent exactement aux métadonnées , car vous ne savez jamais quand votre code sera déployé vers un classement sensible à la casse).

Aaron Bertrand
la source
Incroyable que SSMS n'ait pas cette fonctionnalité intégrée nativement!
nanonerd
15

En plus des solutions déjà mentionnées, je suggère d'utiliser ApexSQL Refactor - un complément SSMS et Visual Studio gratuit.

ApexSQL Refactor peut vous aider à créer vos propres normes de formatage SQL. Il peut être utilisé pour distribuer et appliquer des règles de formatage SQL parmi les membres de l'équipe. Pour effectuer le formatage de la capitalisation, il suffit de:

  1. Télécharger ApexSQL Refactor
  2. Lancez votre SQL Server Management Studio ou Visual Studio et cliquez sur ApexSQL Refactor dans le menu principal
  3. Dans le menu ApexSQL Refactor, cliquez sur l'option Format du code T-SQL
  4. Sélectionnez les options de formatage Définissez l'option spécifique (Capitalisation)
  5. Aperçu de l'effet de l'option sur la requête actuelle ou un exemple intégré

Formatage des majuscules Remarque: Avant de configurer des normes de capitalisation, assurez-vous que votre base de données n'a pas de classement sensible à la casse. Cela peut causer de gros problèmes lors de la mise en majuscule.

Si vous souhaitez en savoir plus, je vous suggère de lire ces 2 articles pour voir comment la capitalisation est gérée avec ApexSQL Refactor:

Charlie_M
la source
7

Une autre solution très simple: utilisez notepad ++ . A l'intérieur, il y a un très bon plugin appelé Poor man's sql formatter . L'inconvénient est que vous devez coller SQLà l'intérieur du notepad++. Mais c'est gratuit .

Il y a aussi une page Web , mais je ne l'ai pas essayée.

Bogdan Bogdanov
la source
2
Il a également écrit un plug-in pour SSMS. Je l'utilise et le recommande tout le temps.
Jonathan Fite
Je ne sais pas si je vais l'essayer à coup sûr! 10x pour le commentaire @Jonathan Fite!
Bogdan Bogdanov
5

SQL Pretty Printer le fait assez bien pour moi. C'est un petit plugin facile à installer pour SSMS. Vous définissez vos préférences, puis chaque fois que vous souhaitez formater du code, cliquez simplement sur l'icône de sa barre d'outils.

efesar
la source
3
FYI: Essai gratuit, ou 50 $ à l'achat.
kmote
4

J'ai trouvé un joyau caché pour le formatage automatique des majuscules / minuscules et l'indentation dans SSMS que j'utiliserai pour toujours. Plus de "nouvelle requête".

  • Nom de la table Rt-Click dans l' Explorateur d'objets
    • Modifier les 200 premières lignes
      • Option de menu QueryDesigner
        • Vitre
          • SQL. Écrivez ou déposez du SQL laid et non formaté. QueryDesigner
            • Vérifiez que la syntaxe SQL va UC mots réservés et indentation pour vous.
DeeLawless
la source