Complément pour le raccourci clavier pour sélectionner le bloc actuel ou exécuter le bloc actuel dans la fenêtre de requête SQL Server Management Studio?

StackOverflow https://stackoverflow.com/questions/6019799

  •  14-11-2019
  •  | 
  •  

Question

Dans Toad, vous avez des raccourcis clavier où vous pouvez sélectionner le bloc actuel ou exécuter le bloc actuel .... Donc, si vous travaillez sur une grande requête SQL, lorsque vous effectuez une modification, vous pouvez simplement faire un Ctrl + Entrée (ou Quelque chose comme ça, je ne me souviens pas en ce moment) plutôt que d'avoir à mettre en évidence manuellement le bloc de SQL et Htting F5.

Je suis à peu près sûr que cela n'existe pas nativement dans SSMS, quelqu'un sait si des fonctionnalités comme celle-ci existent dans des modules complémentaires?

Désolé ... quelques clarifications .... je parle de travailler dans la fenêtre de requête, qui peut contenir:

select * from SomeTable

select * from SomeTable
WHERE
    column1 = 'abc'
AND column2 = 'def'  <--- LET'S SAY MY CURSOR IS SITTING HERE
AND column3 = 'ghi'

select * from AnotherTable
WHERE
    column1 = 'abc'
AND column2 = 'def'
AND column3 = 'ghi'

Donc, je veux juste exécuter l'affirmation selon laquelle mon curseur est dans.

Était-ce utile?

La solution

Le complément SQL complet a cette fonctionnalité exacte. Exécutez l'instruction actuelle sans la sélectionner. Leur version express gratuite l'a, mais je recommande également la version standard pour ses fonctionnalités supplémentaires. C'est un gain de temps majeur.

Autres conseils

OK, donc pour clarifier ce que vous recherchez ... si vous aviez le T-SQL suivant avec le curseur de sélection de texte comme indiqué:

DECLARE @Test Int
SET @Test = 1

IF @Test=1
BEGIN
    SELECT TestColumn1 FROM TestTable
    SELECT AnotherTestColumn FROM AnotherTestTable

    SELECT [A Valid Column]

    FROM [A Valid Table]

    SELECT LastColumn FROM LastTable ][ <- CURSOR HERE
END

Vous voudriez qu'un certain ciel chaud (par exemple CTRL-F5) ne s'exécute SELECT LastColumn FROM LastTable...? Ou SELECT LastColumn FROM LastTable END (Quelle est ce que vous obtiendriez avec la règle de la ligne vierge que vous avez décrite)? Ou autre chose? Que diriez-vous de la déclaration rompue avec une rupture de ligne au milieu, ou les deux déclarations se sont regroupées?

Si vous vouliez vraiment utiliser des lignes vierges pour définir des "blocs", alors cela devrait être assez facile à faire en tant qu'addine (échantillon / tutoriel ici)); Si, en revanche, vous vous attendiez à un peu plus de "intelligence", cela pourrait être une tâche difficile / complexe, avec l'analyse SQL requise, etc.

J'adorerais voir cette fonctionnalité ajoutée à SSMS Query Analyzer. Je suis un utilisateur de Toad de longue date.

La chose la plus proche que j'ai trouvée est de mettre en évidence la requête à l'aide de flèches directionnelles, puis de frapper F5. Toad vous permet d'exécuter une requête simplement en plaçant le curseur n'importe où dans la requête, puis appuyez sur CNTL + Entrez. Cela ne ressemble pas à une sauvegarde d'efficacité, mais ça me manque vraiment.

Vous pouvez consulter ce complément pour SSMS 2012. Placez le curseur dans l'instruction que vous souhaitez exécuter et appuyez sur Ctrl+DÉCALAGE+E

Exécuteur SSMS - http://ssmsexecutor.codeplex.com/

Pas certain que je suis votre libellé, mais voulez-vous dire:

Sélectionnez le texte en ligne de ligne par ligne à partir du curseur Shift + Down flèche

Exécutez la partie sélectionnée de l'éditeur de requête ou l'éditeur de requête entier si rien n'est sélectionné F5 ou Ctrl + E ou Alt + X

Analyser la partie sélectionnée de l'éditeur de requête ou l'ensemble de l'éditeur de requête si rien n'est sélectionné

Ctrl + f5

Raccourcis clavier MSDN SSMS

Je développe un complément SSMSBoost et nous avons récemment ajouté Shift-F5 (sélection de la mise en actuel), qui, suivi par F5 (EXECUTE), exécutera l'instruction actuelle. Il fonctionne dans toutes les versions de SSMS de 2008r2 jusqu'à la dernière 18.1

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top