Als langjähriger Toad for Oracle-Benutzer habe ich mich daran gewöhnt, Strg + Eingabetaste zu drücken und nur die Anweisung unter dem Cursor ausführen zu lassen.
Wenn Sie in SQL Server Management Studio F5 drücken, wird das gesamte Skript ausgeführt. Um nur die aktuelle Anweisung auszuführen, muss ich die gewünschte Anweisung manuell markieren und dann F5 drücken.
Das nervt mich wirklich. Kennt jemand ein Tool mit einer Tastenkombination, mit dem nur die aktuelle Anweisung auf einem SQL Server ausgeführt werden kann? Ich würde die Werkzeuge nur für diese eine Funktion ändern.
Hinweis: Seltsamerweise können Sie selbst mit der kostenlosen Toad for SQL Server nicht nur die Anweisung unter dem Cursor ausführen.
sql-server
database
editor
JosephStyons
quelle
quelle
Antworten:
Sie können dieses Add-In für SSMS 2012 auschecken. Platzieren Sie den Cursor innerhalb der Anweisung, die Sie ausführen möchten, und drücken Sie CTRL+ SHIFT+E
SSMS Executor - https://github.com/devvcat/ssms-executor/releases
Update: Das
Projekt wurde auf github verschoben und das Add-In neu geschrieben, um SSMS 2014, SSMS 2016, zu unterstützen. (Zuvor lebte das Projekt auf Codeplex unter SSMS Executor - http://ssmsexecutor.codeplex.com/ .)
quelle
Verwenden Sie Ctrl+ KU, um eine Zeile auszuwählen. Dann verwenden Sie F5, um es auszuführen.
Obwohl es nur für die Auswahl einzelner Zeilen funktioniert, finde ich es dennoch sehr nützlich.
Ich hoffe es hilft!!
quelle
Ok, was ich von all diesen Antworten bekomme, ist "Nein, das ist nicht möglich."
Bearbeiten:
So konnte ich das machen:
1 - Laden Sie SQL Developer herunter
2 - Laden Sie den jTDS-Treiber herunter
3 - Befolgen Sie diese Anweisungen , um diesen Treiber zu SQL Developer hinzuzufügen
4 - Stellen Sie mit SQL Developer eine Verbindung zu SQL Server her (cool!)
5 - Führen Sie es und das Leben ist gut
quelle
Jemand hat diese Funktion in Devart dbForge SQL Complete (Addon für Management Studio) vorgeschlagen und befindet sich noch in der Entwicklungsphase. Hoffen wir, dass es fertig ist und nicht in der Mitte der Entwicklung aufgegeben wird.
quelle
Es ist wirklich ärgerlich, dass TOAD nicht hält, was es verspricht:
Von der TOAD-Hilfe: [F9 ausführen] einen Teil einer Anweisung, der eine oder mehrere Anweisungen enthalten kann. Sie können den Teil der Anweisung auswählen, indem Sie den Cursor innerhalb oder neben der Anweisung platzieren oder die Anweisung auswählen. Hinweis: Toad betrachtet alle Anweisungen (einschließlich Kommentare) als "benachbart", die durch weniger als zwei Leerzeilen vom Cursor oder voneinander getrennt sind. Wenn während der Ausführung der Anweisung ein Fehler auftritt, wird eine Fehlermeldung angezeigt, mit der Sie den Fehler entweder ignorieren und fortsetzen oder die Ausführung abbrechen können.
Ich habe es millionenfach versucht, aber es führt einfach das gesamte Skript aus. Ich wollte in der Benutzer-Support-Gruppe (toadss (at) yahoogroups.com) danach suchen, aber Yahoo hat die dümmste Suchfunktion aller Zeiten! Es kann nicht einmal das Schlüsselwort "toad" in der toad mail group finden, DOH!
Ich denke, TOAD ist das beste Abfragetool aller Zeiten, aber das Fehlen dieser Funktion nervt mich auch wirklich.
UPDATE: LÖSUNG GEFUNDEN! Ich habe dieses Problem in der Toadss-Mail-Gruppe gestellt und die Antwort erhalten. Im Gegensatz zu Oracle müssen Sie Anweisungen in SQL Server nach jeder Anweisung mit dem Schlüsselwort GO trennen . Nur wenn Sie dies tun, funktioniert die Schaltfläche F9 wie erwartet und führt die aktuelle Anweisung aus.
quelle
Die obige Antwort hat mir geholfen, eine Verknüpfung zum Ausführen der aktuellen Anweisung zu erstellen, ohne die Abfrage auszuwählen
1 - Klicken Sie auf Extras > Optionen > Umgebung > Tastatur
2 - Setzen Sie für Show-Befehle, die enthalten, auf SqlComplete10.Common_ExecuteCurrentStatement
3 - Setzen Sie für Neue Verknüpfung verwenden auf den SQL-Abfrage-Editor
4 - Führen Sie für Drücken der Tastenkombination (gewünschte Tastenkombination) die Kombination Strg-Eingabe aus.
5 - Klicken Sie auf Zuweisen . Klicken Sie auf OK.
quelle
Tools.ExecuteStatement
, was nur funktioniert, wenn ich die Verknüpfung in "Global" ändere.Ich verwende eine Problemumgehung: Ich kommentiere Abfragen, die ich nicht verwende. Sie können STRG-K, STRG-C verwenden, um das von Ihnen hervorgehobene SQL zu kommentieren. Verwenden Sie STRG-K, STRG-U, um Kommentare zu entfernen. Auf diese Weise können Sie alle anderen Abfragen kommentieren und die gewünschte mit F5 ausführen.
quelle
Ich habe diese Arbeit benutzt; wenn der Code nicht auskommentiert ist
(Dieser Befehl hebt die aktuelle Abfragezeile hervor) und dann
(Dieser Lauf hat die Abfrage hervorgehoben).
Dies ist nützlich, wenn Sie eine einzeilige Abfrage zwischen einigen anderen Zeilen ausführen möchten, z.
quelle
Ich denke nicht, dass dies nur mit dem Management Studio möglich ist. ABER Sie können eine Tastaturkürzelsoftware (z. B. http://www.autohotkey.com/ ) verwenden, um eine spezielle Sequenz aufzuzeichnen und einem Hotkey zuzuweisen. In Ihrem Fall benötigen Sie:
Dadurch wird die aktuelle Zeile ausgewählt und ausgeführt.
quelle
In Toad for SQL Server können die folgenden Standard-Hotkeys für die Ausführung verwendet werden:
Wie 'ercan' schrieb, müssen Sie jedoch jede Anweisung mit 'GO' trennen / befolgen.
quelle
Wenn Sie Ihre Hand zum Mausbereich bewegen müssen, können Sie die Strg-Taste gedrückt halten, während Sie eine Aufwärts- oder Abwärtspfeiltaste drücken, um sofort eine Linie auszuwählen.
quelle
Treffer Ctrl- Esolange der Text markiert ist.
quelle
In der SQL Complete Express Edition ist dies integriert. Ohne das benutzerdefinierte Intellisense erhalten Sie es jedoch nicht.
(Ich habe das von Salamander2007's Post bekommen)
quelle
Wenn die Executor-Add-On-Lösung (in der oben angegebenen Antwort) nicht ordnungsgemäß funktioniert, funktioniert sie für mich (SSMS v17.8.1): Das Add-On fügt unter tools einen Befehl hinzu: Tools> Execute Inner Statement .
Sie können ihm eine benutzerdefinierte Tastenkombination zuweisen, indem Sie zu Extras> Optionen> Tastatur gehen und dann unter "Befehle mit folgenden Elementen anzeigen " nach "Ausführen" suchen und " Tools.ExecuteInnerStatement " auswählen . Weisen Sie dann einfach die gewünschten Tastenanschläge im Feld "Tastenkombinationen drücken:" zu und klicken Sie auf die Schaltfläche "Zuweisen".
quelle
Diese Funktion ist im SSMSBoost- Add-In für SSMS enthalten (ich bin der Entwickler dieses Add-Ins):
Shift-F5 wählt die aktuelle Anweisung aus (mit der Sie überprüfen können, was Sie gerade ausführen werden). Dann drücken Sie F5 und führen es aus.
quelle
Sie können jederzeit die Befehlszeilentools sqlcmd und osql verwenden. Ich habe viel Sybase in der Unix-Befehlszeile mit einer Wrapper-Funktion ausgeführt, die meine Befehlszeichenfolge an das Äquivalent übergeben hat (was ich für isql halte?). Ich habe vi gewohnt, also war ich damals vielleicht nur verrückt ;-)
quelle
Wählen Sie einfach die einzelne Anweisung aus (markieren Sie sie), die Sie ausführen möchten, und drücken Sie F5.
quelle
Sie können die beiden Tools wie folgt kombinieren: SQL Complete von dbForce und AuhotHotkey.
Mit SQL Complete: Sie können die aktuelle Anweisung am Cursor ausführen, indem Sie die Kombination Strg + Umschalttaste E drücken
Der Grund, warum ich den AutoHotkey verwendet habe, ist, das Leben einfacher zu machen :-) indem ich nur F6 verwende, um die aktuelle Anweisung auszuführen, indem ich den folgenden Code im AutoHotkey-Skript setze:
Und voilà Sie können jede aktuelle Anweisung am Cursor ausführen, indem Sie einfach F6 drücken
Aber manchmal ist mein großes Problem wieder, dass ich fälschlicherweise F5 anstelle von F6: D drücke
quelle
Die SQL Prompt-Erweiterung von Redgate für SSMS kann dies tun.
Es ist nicht kostenlos, aber meiner Erfahrung nach lohnt es sich. Bessere Intelligenz als die sofort einsatzbereite SSMS-Version, Tab-Färbung, Tab-Verlauf (so wertvoll!), Snippets, Ausführung einzelner Anweisungen (nicht nur eine einzelne Zeile) und vieles mehr.
quelle
Versuchen Sie dies, um nur einen Abschnitt eines größeren Skripts auszuführen.
Schritte:
Reduzieren Sie die SQL-Anweisung, die Sie ausführen möchten, indem Sie auf das Minuszeichen am linken Rand neben der Anweisung klicken. Das zeigt nur die erste Zeile (mit einem Auslassungszeichen "...", um mehr Code anzuzeigen, das nicht angezeigt wird) und die Endung ";" für die Aussage.
Markieren Sie die Linie.
Damit wird nur die hervorgehobene Anweisung ausgeführt. Wenn Sie mehr als eine Anweisung gleichzeitig ausführen möchten, reduzieren Sie jede Anweisung und markieren Sie alles, was Sie ausführen möchten. Klicken Sie dann auf [F5]. Es ist eine Problemumgehung, aber immer noch viel einfacher, als jedes Mal zahlreiche Codezeilen ziehen und hervorheben zu müssen.
quelle
Der einfachste Weg, dies zu tun, ist die Zuweisung für
CTRL
+Enter
Kombination für die Aktion Query.Execute inSQL Server Management Studio
.Tools > Options
Menü öffnen .Environment > Keyboard
Seite im linken Bereich aus.Query.Execute
Aktion suchen und auswählen.SQL Query Editor
in"Use new shortcut in:"
Dropdown - Liste.CTRL + Enter
Kombination in daspress shortcut keys:
Textfeld ein.Assign
Schaltfläche.Shortcut currently used by:
zuQuery.Execute (Ctrl+Enter (SQL Query Editor))
OK
.Done
.quelle
Versuchen Sie, ein Makro in SSMSBoost zu definieren. SSMSBoost / Einstellungen / Makros:
Wählen Sie einen freien Steckplatz für Ihr Makro in der Beschriftung des rechten Bedienfelds (falls gewünscht) und fügen Sie der Sequenz zwei Befehle hinzu: SSMSBoost.SelectCurrentStatement Query.Execute Weisen Sie Ihre bevorzugte Verknüpfung zu, und das ist alles.
quelle
Folgendes funktioniert für mich ... Ich verwende SSMS 2012
1 - Klicken Sie auf Extras> Optionen> Umgebungstastatur
2 - Setzen Sie für Show-Befehle, die enthalten , auf Query.Execute
3 - Setzen Sie für Neue Verknüpfung verwenden auf den SQL-Abfrage-Editor
4 - Führen Sie für Drücken der Tastenkombination die Kombination Strg-Eingabetaste aus.
5 - Klicken Sie auf Zuweisen. Klicken Sie auf OK.
quelle