Jako długi Ropuch dla użytkownika Oracle przyzwyczaiłem się do wciskania Ctrl + Enter i wykonywania instrukcji pod kursorem.
W SQL Server Management Studio naciśnięcie klawisza F5 powoduje uruchomienie całego skryptu. Aby uruchomić tylko bieżącą instrukcję, muszę ręcznie zaznaczyć żądaną instrukcję, a następnie nacisnąć klawisz F5.
To jest dla mnie naprawdę denerwujące. Czy ktoś zna narzędzie ze skrótem klawiaturowym do uruchamiania tylko bieżącej instrukcji na serwerze SQL? Zmieniłbym narzędzia tylko dla tej jednej funkcji.
Uwaga: Co dziwne, nawet bezpłatna Ropucha dla SQL Server nie pozwala na uruchomienie tylko instrukcji pod kursorem.
sql-server
database
editor
JosephStyons
źródło
źródło
Odpowiedzi:
Możesz sprawdzić ten dodatek dla SSMS 2012. Umieść kursor w instrukcji, którą chcesz wykonać i naciśnij CTRL+ SHIFT+E
Wykonawca SSMS - https://github.com/devvcat/ssms-executor/releases
Aktualizacja:
Projekt został przeniesiony na github, a dodatek został ponownie napisany w celu obsługi SSMS 2014, SSMS 2016. (Wcześniej projekt działał na codeplex, w SSMS Executor - http://ssmsexecutor.codeplex.com/ .)
źródło
Użyj Ctrl+, KUaby wybrać linię. Następnie użyj, F5aby go uruchomić.
Chociaż działa tylko w przypadku wyboru jednej linii, nadal uważam, że jest całkiem przydatny.
Mam nadzieję, że to pomoże!!
źródło
Ok, więc wszystkie te odpowiedzi brzmią: „Nie, to nie jest możliwe”.
Edytować:
Oto, jak mogłem to zrobić:
1 - Pobierz program SQL Developer
2 - Pobierz sterownik jTDS
3 - Postępuj zgodnie z tymi instrukcjami, aby dodać ten sterownik do programu SQL Developer
4 - Połącz się z SQL Server za pomocą SQL Developer (super!)
5 - Uruchom to, a życie jest dobre
źródło
Ktoś zasugerował tę funkcjonalność w Devart dbForge SQL Complete (dodatek do Management Studio) i wciąż jest w fazie rozwoju. Miejmy nadzieję, że jest skończony i nie zostanie porzucony w połowie tworzenia.
źródło
To naprawdę denerwujące, że TOAD nie dotrzymuje obietnic:
Z pomocy TOAD: [F9, aby wykonać] część instrukcji, która może zawierać jedną lub więcej instrukcji. Możesz zaznaczyć część instrukcji, umieszczając kursor wewnątrz instrukcji lub obok niej lub wybierając instrukcję. Uwaga: Ropucha traktuje „sąsiadujące” wszystkie instrukcje (w tym komentarze) oddzielone od kursora lub od siebie mniej niż dwoma pustymi wierszami. Jeśli podczas wykonywania instrukcji wystąpi błąd, zostanie wyświetlony komunikat o błędzie, umożliwiający zignorowanie błędu i kontynuowanie lub przerwanie wykonywania.
Próbowałem tego milion razy, ale po prostu wykonuje cały skrypt. Chciałem go znaleźć w grupie wsparcia użytkowników (toadss (at) yahoogroups.com), ale Yahoo ma najgłupszą wyszukiwarkę, jaka kiedykolwiek istniała! Nie może nawet znaleźć słowa kluczowego „ropucha” w grupie poczty ropucha, DOH!
Myślę, że TOAD to najlepsze narzędzie do wyszukiwania zapytań, ale brak tej funkcji naprawdę mnie denerwuje.
AKTUALIZACJA: ZNALEZIONO ROZWIĄZANIE! Zadałem ten problem w grupie mailowej toadss i otrzymałem odpowiedź. W przeciwieństwie do Oracle, musisz oddzielić instrukcje w SQL Server za pomocą słowa kluczowego GO po każdej instrukcji. Tylko jeśli to zrobisz, przycisk F9 działa zgodnie z oczekiwaniami, wykonując bieżącą instrukcję.
źródło
Powyższa odpowiedź pomogła mi stworzyć skrót do wykonania aktualnej instrukcji bez wybierania zapytania
1 - Kliknij Narzędzia > Opcje > Środowisko > Klawiatura
2 - W przypadku poleceń Pokaż zawierających, ustaw je na SqlComplete10.Common_ExecuteCurrentStatement
3 - Aby użyć nowego skrótu w, ustaw go na SQL Query Editor
4 - Aby nacisnąć klawisze skrótu (żądany klawisz skrótu), wykonaj kombinację Ctrl-Enter.
5 - Kliknij Przypisz . Kliknij OK.
źródło
Tools.ExecuteStatement
, co działa tylko wtedy, gdy zmienię jego skrót na Global.Użyłem tego obejścia; gdy kod nie jest wykomentowany
(to polecenie wyróżnia bieżącą linię zapytania), a następnie
(to zapytanie podświetlone).
Jest to przydatne, gdy chcesz uruchomić zapytanie jednowierszowe między innymi wierszami, takimi jak:
Select top 100 * from [dbo].[Order] Select top 100 * from [dbo].[OrderItem] Select top 100 * from [dbo].[OrderStatus]
źródło
Używam obejścia: komentuję zapytania, których nie używam. Możesz użyć CTRL-K, CTRL-C, aby skomentować podświetlony SQL. Użyj CTRL-K, CTRL-U, aby odkomentować. W ten sposób możesz skomentować wszystkie inne zapytania i wykonać to, które Cię interesuje, za pomocą F5.
źródło
Nie sądzę, aby było to możliwe przy użyciu samego studia menedżerskiego. ALE możesz użyć oprogramowania skrótów klawiaturowych (np. Http://www.autohotkey.com/ ), aby nagrać specjalną sekwencję i przypisać ją do klawisza skrótu. W twoim przypadku potrzebujesz:
<home><shift-end><F5>
Spowoduje to zaznaczenie bieżącej linii i wykonanie jej.
źródło
W programie Toad for SQL Server do wykonania można użyć następujących domyślnych klawiszy skrótu:
Jednak, jak napisał „ercan”, musisz oddzielić / wykonać każdą instrukcję za pomocą „GO”.
SELECT TOP 5 * FROM accounts GO SELECT TOP 5 * FROM users GO SELECT TOP 5 * FROM contracts GO
źródło
Jeśli musisz przesunąć rękę do części myszy, która ci przeszkadza, możesz przytrzymać klawisz Ctrl, naciskając klawisz strzałki w górę lub w dół, aby od razu zaznaczyć linię.
źródło
Hit Ctrl- Egdy tekst jest podświetlony.
źródło
Edycja SQL Complete Express ma to wbudowane. Ale nie można tego uzyskać bez niestandardowego IntelliSense.
(Mam to z postu Salamander2007)
źródło
Jeśli rozwiązanie dodatku executora (w odpowiedzi na pierwsze pytanie) nie działa poprawnie, to działa dla mnie (SSMS v17.8.1): Dodatek dodaje polecenie w obszarze narzędzia: Narzędzia> Wykonaj instrukcję wewnętrzną .
Możesz przypisać do niego niestandardowy klawisz skrótu klawiaturowego, przechodząc do menu Narzędzia> Opcje> Klawiatura, a następnie wyszukując „wykonaj” w polu „Pokaż polecenia zawierające:” i wybierając Narzędzia.ExecuteInnerStatement . Następnie po prostu przypisz żądane naciśnięcia klawiszy w polu „Naciśnij klawisze skrótu:” i naciśnij przycisk Przypisz.
źródło
Ta funkcja jest obecna w dodatku SSMSBoost dla SSMS (jestem twórcą tego dodatku):
Shift-F5 wybierze bieżącą instrukcję (co pozwala na przejrzenie tego, co masz zamiar wykonać). Następnie naciskasz F5 i wykonujesz go.
źródło
Spróbuj zdefiniować makro w SSMSBoost SSMSBoost / Settings / Macros:
Wybierz wolne miejsce dla swojego makra w podpisie wypełnienia prawego panelu (jeśli chcesz) dodaj 2 polecenia do sekwencji: SSMSBoost.SelectCurrentStatement Query.Execute przypisz ci swój ulubiony skrót i to wszystko.
źródło
zawsze możesz użyć narzędzi wiersza poleceń sqlcmd i osql. Zrobiłem dużo sybase w wierszu poleceń unixa, używając funkcji opakowania, która przekazała moje polecenie do odpowiednika (który, jak sądzę, był isql?). Używałem vi, więc może wtedy byłem po prostu szalony ;-)
źródło
Po prostu wybierz (zaznacz) pojedynczą instrukcję, którą chcesz uruchomić i naciśnij klawisz F5.
źródło
Możesz połączyć te dwa narzędzia w następujący sposób: SQL Complete z dbForce i AuhotHotkey.
Z SQL Complete: możesz wykonać bieżącą instrukcję w miejscu kursora, naciskając kombinację Ctrl Shift E
Powodem, dla którego użyłem AutoHotkey, jest ułatwienie życia :-), używając tylko F6 do wykonania bieżącej instrukcji, ustawiając następujący kod w skrypcie AutoHotkey:
;SQL EXECUTE THE CURRENT STATEMENT F6:: Send ^+E return
I voilà, możesz wykonać dowolną bieżącą instrukcję przy kursorze, naciskając po prostu F6
Ale czasami znowu moim wielkim problemem jest to, że omyłkowo wciskam F5 zamiast F6: D
źródło
Może to zrobić rozszerzenie SQL Prompt firmy Redgate dla programu SSMS.
To nie jest darmowe, ale z mojego doświadczenia wynika, że warto je mieć. Lepsza inteligencja niż w SSMS po wyjęciu z pudełka, kolorowanie kart, historia kart (tak cenna!), Fragmenty, wykonanie pojedynczej instrukcji (nie tylko pojedynczej linii) i wiele więcej.
źródło
Aby uruchomić tylko sekcję większego skryptu, spróbuj tego ...
Kroki:
Zwiń instrukcję SQL, którą chcesz uruchomić, klikając znak minus na lewym marginesie obok instrukcji. Spowoduje to wyświetlenie tylko pierwszej linii (z wielokropkiem „...” wskazującym, że kod nie jest wyświetlany) i końcówką „;” za oświadczenie.
Podświetl linię.
To uruchomi tylko podświetloną instrukcję. Jeśli chcesz uruchomić więcej niż jedną instrukcję na raz, zwiń każdą instrukcję i zaznacz wszystko, co chcesz uruchomić, a następnie kliknij [F5]. Jest to obejście, ale nadal znacznie łatwiejsze niż ciągłe przeciąganie i zaznaczanie wielu wierszy kodu za każdym razem.
źródło
Najprostszym sposobem na to jest zadanie dla
CTRL
+Enter
kombinacji dla działania Query.Execute wSQL Server Management Studio
.Tools > Options
menu.Environment > Keyboard
stronę w lewym okienku.Query.Execute
akcję i wybierz ją.SQL Query Editor
na"Use new shortcut in:"
liście rozwijanej.CTRL + Enter
kombinację wpress shortcut keys:
polu tekstowym.Assign
przycisk.Shortcut currently used by:
naQuery.Execute (Ctrl+Enter (SQL Query Editor))
OK
.Done
.źródło
Użyj Shift+ ▼(strzałka w dół), aby wybrać pojedynczy wiersz, zapisz przycisk niż Ctrl+ KU : D lol.
Następnie użyj, F5aby go uruchomić.
Mam nadzieję, że to też pomoże.
źródło
Poniższe działa dla mnie ... Używam SSMS 2012
1 - Kliknij Narzędzia> Opcje> Klawiatura środowiska
2 - W przypadku poleceń Pokaż zawierających , ustaw je na Query.Execute
3 - Aby użyć nowego skrótu w , ustaw go na SQL Query Editor
4 - W przypadku naciśnięcia klawiszy skrótu wykonaj kombinację Ctrl-Enter.
5 - Kliknij Przypisz. Kliknij OK.
źródło