Как я могу запустить только оператор, на котором находится мой курсор в среде SQL Server Management Studio?



Как долгое время жаба для пользователя Oracle, я привык нажимать Ctrl+Enter и выполнять только оператор под курсором.



в среде SQL Server Management Studio при нажатии клавиши F5 выполняется весь сценарий. Чтобы запустить только текущий оператор, я должен вручную выделить нужный оператор, а затем нажать F5.



Это действительно раздражает меня. Кто-нибудь знает инструмент с сочетанием клавиш для запуска только текущего оператора на SQL Server? Я бы измените инструменты только для этой функции.



Примечание: как ни странно, даже бесплатно жаба для SQL Server не позволяет запускать только оператор под курсором.

591   17  

17 ответов:

вы можете проверить эту надстройку для SSMS 2012. Поместите курсор в инструкцию, которую вы хотите выполнить, и нажмите CTRL+ SHIFT+E

исполнитель SSMS - https://github.com/devvcat/ssms-executor/releases

обновление:
Проект переехал в github и надстройка переписана для поддержки SSMS 2014, SSMS 2016. (Ранее проект жил на codeplex, at исполнитель SSMS - http://ssmsexecutor.codeplex.com/.)

использовать Ctrl+КУ для выбора линии. Тогда используйте F5, чтобы запустить его.

хотя он работает только для выбора одной строки, все же я нахожу его весьма полезным.

надеюсь, что это помогает!!

ок, так что я получаю от всех этих ответов "нет, это невозможно."

Edit:

вот как я смог это сделать:

1 - Скачать разработчик SQL

2 - Скачать драйвер jTDS

3 - следовать эти инструкции чтобы добавить этот драйвер в SQL Developer

4-Подключение к SQL Server с помощью SQL Developer (круто!)

5 - запустите его, и жизнь хороша

кто-то предложил эту функцию на Devart dbForge SQL Complete (addon for Management Studio) , и он все еще находится в стадии разработки. Будем надеяться, что он закончен и не будет оставлен на полпути развития.

Примечание: как ни странно, даже бесплатно жаба для SQL Server не позволяет запускать просто оператор под курсором.

это действительно раздражает, что жаба не придерживается того, что она обещает:

от жабы помощь:[F9 для выполнения] часть инструкции, которая может содержать один или несколько операторов. Вы можете выбрать часть инструкции, поместив курсор внутри или рядом с инструкцией, или выбрав инструкцию. Отмечать: Жаба считает "смежными" все операторы (включая комментарии), отделенные от курсора или друг от друга менее чем двумя пустыми строками. При возникновении ошибки во время выполнения инструкции отображается сообщение об ошибке, позволяющее либо игнорировать ошибку и продолжить, либо прервать выполнение.

Я пробовал миллион раз, но он просто выполняет весь скрипт. Я хотел найти его в группе поддержки пользователей (toadss (at)yahoogroups.com) но yahoo имеет самый глупый поиск объект когда-либо! Он даже не может найти ключевое слово "toad" в почтовой группе toad, DOH!

Я думаю, что жаба является лучшим инструментом запроса когда-либо, но отсутствие этой функции действительно раздражает меня тоже.

ОБНОВЛЕНИЕ: РЕШЕНИЕ НАЙДЕНО! Я задал этот вопрос в почтовой группе toadss и получил ответ. В отличие от Oracle, вы должны отделить операторы в SQL Server с ключевым словом перейти после каждого выступления. Только если вы это сделаете, кнопка F9 работает так, как ожидалось, выполнение текущего оператора.

выше ответ помог мне создать ярлык для выполнения текущего оператора без выбора запроса

1 - Нажмите на кнопку инструменты>опции>окружающая среда>клавиатура

2 - для показать команды содержащий, установите его в SqlComplete10.Common_ExecuteCurrentStatement

3 - для использования нового ярлыка, установите его редактор SQL-запросов

4 - для Нажмите клавиши быстрого доступа (желаемая клавиша быстрого доступа), выполните комбинацию Ctrl-Enter.

5 - Нажмите на кнопку назначение. Нажмите на кнопку ОК.

Я использую обходной путь: я комментирую запросы, которые я не использую. Вы можете использовать CTRL-K, CTRL-C, чтобы прокомментировать выделенный SQL. Используйте CTRL-K, CTRL-U для раскомментирования. Таким образом, вы можете комментировать все другие запросы и выполнять тот, который вас интересует, с помощью F5.

Я не думаю, что это можно сделать, используя только руководство студии. Но вы можете использовать программное обеспечение быстрого доступа (например,http://www.autohotkey.com/) для записи специальной последовательности и назначения горячей клавиши. В вашем случае вам нужно:

<home><shift-end><F5>

Это позволит выбрать текущую строку и выполнить его.

нажмите Ctrl -E пока текст выделен.

в Toad for SQL Server для выполнения можно использовать следующие горячие клавиши по умолчанию:

  • F5: выполнить все инструкции SQL в Редакторе
  • F9: выполнить инструкцию SQL в текущей позиции курсора
  • Shift-F9: выполнение всех инструкций SQL из курсора, включая текущую позицию курсора

однако, как писал "ercan", вам нужно отделить/следовать каждому заявлению с помощью "GO".

SELECT TOP 5 * FROM accounts
GO

SELECT TOP 5 * FROM users
GO

SELECT TOP 5 * FROM contracts
GO

Если вас беспокоит необходимость переместить руку на часть мыши, вы можете удерживать Ctrl вниз, нажимая клавишу со стрелкой вверх или вниз, чтобы сразу выбрать линию.

SQL Complete Express edition имеет этот встроенный. Но вы не получите его без пользовательского intellisense.

(Я получил это из сообщения Salamander2007)

вы всегда можете использовать инструменты командной строки sqlcmd и osql. Я сделал много sybase все в командной строке unix, используя функцию-оболочку, которая передала мою командную строку в эквивалент (который, я думаю, был isql?). Я использовал vi, так что, возможно, я был просто сумасшедшим тогда ; -)

просто выберите (выделите) один оператор, который вы хотите запустить, и нажмите F5.

вы можете объединить два инструмента следующим образом : SQL Complete от dbForce и AuhotHotkey.

С SQL Complete: вы можете выполнить текущий оператор в курсоре, нажав комбинацию Ctrl Shift E

причина, по которой я использовал AutoHotkey, заключается в том, чтобы облегчить жизнь :-) используя только F6 для выполнения текущего оператора, установив следующий код в скрипте AutoHotkey:

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

и вуаля вы можете выполнить любой текущий оператор в курсоре просто нажав F6

но иногда, опять же моя большая проблема заключается в том, что я ошибочно нажимаю F5 вместо F6: D

Если решение executor add-on (в верхнем опубликованном ответе) не работает должным образом, я получил его для работы для меня (SSMS v17. 8. 1): Надстройка добавляет команду в разделе Инструменты: Инструменты > Выполнить Внутренний Оператор.

вы можете назначить ему пользовательскую комбинацию клавиш, перейдя в Сервис > Параметры > Клавиатура затем найдите "выполнить" в "показать команды, содержащие:" и выберите инструменты.ExecuteInnerStatement. Тогда просто назначьте желаемое нажатие клавиши(ы) в поле "нажмите сочетания клавиш:" и нажмите кнопку Назначить.

следующие работы для меня ... Я использую SSMS 2012

1-Нажмите на Инструменты > Параметры > клавиатура среды

2 - для показать команды, содержащие, установить запрос.Выполнить

3 на используйте новый ярлык в, установить редактор SQL-запросов

4 на нажмите клавиши быстрого доступа, выполните комбинацию Ctrl-Enter.

5 - Нажмите на кнопку Назначить. Нажмите на кнопку ОК.

Comments

    Ничего не найдено.