web-dev-qa-db-fra.com

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

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 en majuscule automatiquement. Comment répliquer ce comportement dans SSMS?

23
David Folksman

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 Pack d'outils SSMS de Mladen Prajdić ou 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 lorsque vous tapez.

Pour moi, je le fais depuis si longtemps, ça vient naturellement, et pas en appuyant Shift me ralentirait. Lorsque je reçois 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 j'appuie sur 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é dans un classement sensible à la casse).

29
Aaron Bertrand

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 entre 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. Prévisualisez l'effet de l'option sur la requête en cours ou sur un exemple intégré

Capitalization formatting Remarque: Avant de configurer des normes de capitalisation, assurez-vous que votre base de données ne dispose pas d'un 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:

16
Charlie_M

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 dans le notepad++. Mais c'est gratuit .

Il y a aussi un page web , mais je ne l'ai pas essayé.

7
Bogdan Bogdanov

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.

5
efesar

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 Explorateur d'objets
    • Modifier les 200 premières lignes
      • QueryDesigner option de menu
        • Vitre
          • SQL. Écrivez ou déposez de laide SQL non formatée. QueryDesigner
            • Vérifiez que la syntaxe SQL va UC mots réservés et indentation pour vous.
4
DeeLawless