Hoe kan ik alleen de instructie uitvoeren waarop mijn cursor staat in SQL Server Management Studio?

Als een lange tijd Toad voor Oracle-gebruiker, ben ik eraan gewend geraakt om op Ctrl+Enter te drukken en alleen de instructie onder de cursor uit te voeren.

Als u in SQL Server Management Studio op F5 drukt, wordt het hele script uitgevoerd. Om alleen de huidige verklaring uit te voeren, moet ik de gewenste verklaring handmatig markeren en vervolgens op F5 drukken.

Dat is echt vervelend voor mij. Kent iemand een tool met een sneltoets om alleen de huidige instructie op een SQL Server uit te voeren? Ik zou alleen voor deze ene functie van gereedschap wisselen.

Opmerking: vreemd genoeg laat zelfs de gratis Toad voor SQL Serverje geen voer alleen de instructie onder de cursor uit.


Antwoord 1, autoriteit 100%

Gebruik Ctrl+KUom een ​​regel te selecteren.
Gebruik vervolgens F5om het uit te voeren.

Hoewel het alleen werkt voor selectie van één regel, vind ik het toch best handig.

Hopelijk helpt het!!


Antwoord 2, autoriteit 89%

U kunt deze add-in voor SSMS 2012 bekijken. Plaats de cursor binnen de instructie die u wilt uitvoeren en druk op CTRL+SHIFT+E< /kbd>

SSMS-uitvoerder - https://github.com/devvcat/ssms-executor/releases

Bijwerken:
Project verplaatst naar github en de add-in herschreven ter ondersteuning van SSMS 2014, SSMS 2016. (Voorheen leefde het project op codeplex, op SSMS-uitvoerder - http://ssmsexecutor.codeplex.com/.)


Antwoord 3, autoriteit 50%

Ok, dus wat ik uit al deze antwoorden krijg is "Nee, dat is niet mogelijk."

Bewerken:

Hier is hoe ik dit heb kunnen doen:

1 - Download SQL-ontwikkelaar

2 - Download het jTDS-stuurprogramma

3 - Volg deze instructiesom voeg dat stuurprogramma toe aan SQL Developer

4 - Maak verbinding met SQL Server met SQL Developer (cool!)

5 - Voer het uit en het leven is goed


Antwoord 4, autoriteit 20%

Iemand heeft deze functie voorgesteldop Devart dbForge SQL Complete (ad-don voor Management Studio) en het bevindt zich nog in de ontwikkelingsfase. Laten we hopen dat het af is en niet halverwege de ontwikkeling wordt verlaten.


Antwoord 5, autoriteit 14%

Opmerking: vreemd genoeg zelfs de gratis Toad
voor SQL Server laat je niet rennen
alleen de instructie onder de cursor.

Het is echt vervelend dat TOAD zich niet houdt aan wat het belooft:

Vanuit TOAD help: [F9 om uit te voeren] een gedeelte van een instructie, die een of meer instructies kan bevatten. U kunt het gedeelte van de verklaring selecteren door de cursor binnen of naast de verklaring te plaatsen, of door de verklaring te selecteren.
Opmerking: Toad beschouwt alle uitspraken (inclusief opmerkingen) als "aangrenzend" die door minder dan twee lege regels van de cursor of van elkaar zijn gescheiden. Als er een fout optreedt tijdens het uitvoeren van een instructie, wordt er een foutbericht weergegeven, zodat u de fout kunt negeren en doorgaan of de uitvoering kunt afbreken.

Ik heb het een miljoen keer geprobeerd, maar het voert gewoon het hele script uit. Ik wilde ernaar zoeken in de gebruikersondersteuningsgroep (toadss(at)yahoogroups.com) maar yahoo heeft de domste zoekfunctie ooit! Het kan het trefwoord "toad" niet eens vinden in de pad-mailgroep, DOH!

Ik denk dat TOAD de beste zoektool ooit is, maar het ontbreken van deze functie irriteert me ook enorm.

UPDATE: OPLOSSING GEVONDEN!
Ik vroeg deze kwestie in toadss mailgroep en kreeg het antwoord. In tegenstelling tot Oracle, moet u afzonderlijke verklaringen in SQL Server met het trefwoord GO na elke uitspraak. Alleen als je dat doet de F9-toets werkt zoals verwacht, het uitvoeren van de huidige instructie.


Antwoord 6, gezag 14%

Boven antwoord heeft me geholpen om een ​​snelkoppeling naar de huidige instructie uit te voeren zonder dat u de query

1 - Klik op Extra & gt; Opties & gt; Milieu & gt; Toetsenbord

2 - Voor Show commando's bevat, zet deze op SqlComplete10.Common_ExecuteCurrentStatement

3 - For Use nieuwe snelkoppeling in, zet deze op SQL Query Editor

4 -. Voor Druk sneltoetsen (gewenste sneltoets), voert u de Ctrl-Enter combinatie

5 - Klik op toewijzen . Klik op OK.


Antwoord 7, Autoriteit 14%

Ik gebruikte om dit werk; wanneer code niet wordt uitgecommentarieerd

Ctrl + K + U

(dit commando te markeren huidige zoekopdracht lijn) en vervolgens

Ctrl + E

(deze run gemarkeerd vraag).

Het is handig als u wilt een enkele regel vraag tussen een aantal andere lijnen, zoals uit te voeren:

 Select top 100 * from [dbo].[Order]
  Select top 100 * from [dbo].[OrderItem]
  Select top 100 * from [dbo].[OrderStatus]

Antwoord 8, gezag 11%

Ik gebruik een oplossing: Ik reactie vragen die ik maak geen gebruik van. U kunt CTRL-K, CTRL-C te gebruiken om de SQL die je hebt gemarkeerd commentaar. Gebruik CTRL-K, CTRL-U te uncomment. Op die manier kunt u reageren alle andere vragen, en uitvoeren van de ene u geïnteresseerd bent in met F5.


Antwoord 9, gezag 7%

Ik denk niet dat dit mogelijk is te doen met behulp van alleen het beheer studio.
Maar je kunt sneltoets software (bijvoorbeeld http://www.autohotkey.com/ ) gebruiken om een ​​hebben speciale sequentie opgenomen en toegewezen aan een sneltoets.
In uw geval moet u:

<home><shift-end><F5>

Dit zal de huidige regel te selecteren en uit te voeren.


Antwoord 10, Autoriteit 5%

Hit Ctrl -. E terwijl tekst is gemarkeerd


Antwoord 11, Autoriteit 5%

In Pad voor SQL Server de hot-keys volgende standaard kan worden gebruikt voor de uitvoering:

  • F5: Voer alle SQL-statements in editor
  • F9: Voer SQL-instructie op de huidige positie van de cursor
  • Shift-F9: Voer alle SQL-statements van de cursor, met inbegrip van de stroom bij de cursor positie

Echter, net als 'Ercan' schreef, moet je scheiden / volgen ieder statement 'GO'.

SELECT TOP 5 * FROM accounts
GO
SELECT TOP 5 * FROM users
GO
SELECT TOP 5 * FROM contracts
GO

Antwoord 12, Autoriteit 2%

Als het het hebben om je hand te verplaatsen naar de muis gedeelte dat je stoort, kunt u de Ctrl ingedrukt houdt terwijl het raken van een pijl omhoog of omlaag toets om een ​​regel te selecteren in een keer.


Antwoord 13, Autoriteit 2%

SQL Volledig Express editie heeft deze ingebouwd. Maar je hoeft het niet zonder de aangepaste intellisense.

(ik heb dit van Salamander2007's post)


Antwoord 14, Autoriteit 2%

Als de uitvoerder add-on-oplossing (in de top geplaatst antwoord) niet goed werkt, ik heb het aan het werk voor mij (SSMS v17.8.1):
De add-on voegt een commando onder gereedschappen: Extra & gt; Uitvoeren Inner Verklaring .

U kunt een aangepaste toetsenbord sneltoets toe te wijzen door te gaan naar Extra & gt; Opties & gt; Toetsenbord en zoek naar "uitvoeren" in de 'Show commando's met daarin:' en het selecteren van Tools.ExecuteInnerStatement .
Dan gewoon uw toetsaanslagen (s) toe te wijzen in de 'Press sneltoetsen'. Veld en druk op de knop Toewijzen


Antwoord 15, Autoriteit 2%

Deze functie is aanwezig in SSMSBoost add-in voor SSMS (ik ben de ontwikkelaar van deze add-in ):

Shift-F5selecteert de huidige instructie (waardoor u kunt bekijken wat u momenteel gaat uitvoeren). Dan druk je op F5en voer je het uit.


Antwoord 16, autoriteit 2%

Probeer macro te definiëren in SSMSBoost
SSMSBoost/Instellingen/Macro's:

Selecteer gratis slot voor je macro
in rechterdeelvenster vul bijschrift in (als je wilt)
voeg 2 commando's toe aan de reeks:
SSMSBoost.Select CurrentStatement
Query.Uitvoeren
wijs uw favoriete snelkoppeling toe
en dat is alles.


Antwoord 17, autoriteit 2%

Ik ben het eens met JosephStyons, maar kan niet stemmen of commentaar geven. DBeaver, squirrel, PL/SQL Developer, Toad hebben allemaal de mogelijkheid om een ​​enkele instructie uit te voeren.

In mijn geval gebruik ik deze andere tools die allemaal de optie hebben, maar als ik SQLServer Management Studio gebruik, loop ik het risico dat ik iets invoeg en/of verwijder omdat ik vergeten ben de select-instructie te markeren.

Dit is geen optie, het is een vereiste. Microsoft weigert echter logische nuttige functies te erkennen die gebruikers nodig hebben, maar kiest ervoor om tegemoet te komen aan nutteloze en cosmetische functies.

UPDATE: ik vraag me af of gebruikers van Microsoft en SQL Server vinden dat deze bug een "functie" is, omdat ze in staat zijn (gedwongen) SQL-statements aan elkaar te koppelen en allemaal tegelijk uit te voeren. Misschien is dat de reden waarom het verzoek aan dovemansoren gericht is?


Antwoord 18

u kunt altijd de opdrachtregeltools sqlcmd en osql gebruiken. Ik deed veel sybase allemaal op de Unix-opdrachtregel met behulp van een wrapper-functie die mijn opdrachtstring in het equivalent doorgaf (waarvan ik denk dat het isql was?). Ik gebruikte vi om, dus misschien was ik toen gewoon gek 😉


Antwoord 19

Selecteer (markeer) de enkele instructie die u wilt uitvoeren en druk op F5.


Antwoord 20

U kunt de twee Tools als volgt combineren: SQL Complete van dbForce en AuhotHotkey.

Met SQL Complete: u kunt het huidige statement bij de cursor uitvoeren door op de combinatie Ctrl Shift E te drukken

De reden dat ik de AutoHotkey heb gebruikt, is om het leven gemakkelijker te maken 🙂 door alleen F6 te gebruiken om de huidige instructie uit te voeren, door de volgende code in het AutoHotkey-script in te stellen:

;SQL EXECUTE THE CURRENT STATEMENT
F6::
Send ^+E
return

En voilà, je kunt elke huidige instructie bij de cursor uitvoeren door gewoon op F6 te drukken

Maar soms, nogmaals, mijn grote probleem is dat ik per ongeluk op F5 druk in plaats van F6 😀


Antwoord 21

Redgate's SQL Prompt-extensie voor SSMS kan dit.

Het is niet gratis, maar in mijn ervaring is het de moeite waard. Betere intelligentie dan de kant-en-klare SSMS-versie, tabbladkleuring, tabbladgeschiedenis (zo waardevol!), fragmenten, uitvoering van een enkel statement (niet slechts een enkele regel), en nog veel meer.


Antwoord 22

Probeer dit om een ​​gedeelte van een groter script uit te voeren..

Stappen:

  1. Klap de SQL-instructie die u wilt uitvoeren samen door op het minteken in de linkermarge naast de instructie te klikken. Dat toont alleen de eerste regel (met een ellips "..." om aan te geven dat er meer code niet wordt weergegeven) en het einde ";" voor de verklaring.

  2. Markeer de lijn.

  3. Druk op de [F5]-toets.

Dat zal alleen de gemarkeerde instructie uitvoeren. Als je meer dan één wilt rennen
verklaring per keer, vouw elke verklaring samen en markeer alles wat u wilt uitvoeren, en klik vervolgens op [F5].
Het is een tijdelijke oplossing, maar nog steeds veel gemakkelijker dan elke keer talloze regels code te moeten slepen en markeren.


Antwoord 23

De eenvoudigste manier om dit te doen is opdracht voor CTRL+ Entercombinatie voor actie Query.Executein SQL Server Management Studio.

  1. Open Tools > Options.
  2. Selecteer Environment > Keyboard-pagina in linkerdeelvenster.
  3. Zoek Query.Executeactie en selecteer deze.
  4. Stel SQL Query Editorin in de vervolgkeuzelijst "Use new shortcut in:".
  5. Typ nu de combinatie CTRL + Enterin press shortcut keys:tekstvak.
  6. Klik op de knop Assign.
  7. Verander Shortcut currently used by:in Query.Execute (Ctrl+Enter (SQL Query Editor))
  8. Klik op OK. Done.

Antwoord 24

Gebruik Shift+(pijl omlaag) om een enkele rij te selecteren, sla een knop op dan
Ctrl+KU😀 lol.

Gebruik vervolgens F5om het uit te voeren.

Ik hoop dat het ook helpt..


Antwoord 25

Het volgende werkt voor mij ... Ik gebruik SSMS 2012

1 - Klik op Extra > Opties > Omgevingstoetsenbord

2 - Voor Toon commando's diebevatten, stel dit in op Query.Execute

3 - Voor Nieuwe snelkoppeling gebruiken instelt u deze in op SQL Query Editor

4 - Voor Druk sneltoetsen, voer de combinatie Ctrl-Enter uit.

5 - Klik op Toewijzen. Klik op OK.

Other episodes