Подтвердить что ты не робот

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

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

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

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

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

4b9b3361

Ответ 1

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

Редактировать:

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

1 - Скачать SQL Developer

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

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

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

5 - Беги и жизнь хороша

Ответ 2

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

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

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

Ответ 3

Используйте Ctrl + KU, чтобы выбрать линию. Затем используйте F5, чтобы запустить его.

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

Надеюсь, поможет!!

Ответ 4

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

Ответ 5

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

Это действительно раздражает то, что TOAD не поддерживает то, что он promises:

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

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

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

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

Ответ 6

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

1 - Нажмите Сервис > Параметры > Среда > Клавиатура

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

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

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

5 - Нажмите Назначить. Нажмите "ОК".

Ответ 7

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

Ответ 8

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

<home><shift-end><F5>

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

Ответ 9

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

Ответ 10

В Toad для 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

Ответ 11

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

Ответ 12

Если решение для дополнения executor (в верхнем опубликованном ответе) не работает должным образом, я заставил его работать на меня (SSMS v17.8.1): надстройка добавляет команду в разделе tools: Tools> Execute Inner Statement.

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

Ответ 13

Я использовал эту работу вокруг; когда код не закомментирован

Ctrl + K + U

(эта команда выделяет текущую строку запроса), а затем

Ctrl + E

(этот прогон подсвечивает запрос).

Это полезно, когда вы хотите выполнить однострочный запрос между некоторыми другими строками, такими как:

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

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

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

Ответ 14

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

Ответ 15

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

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

Ответ 16

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

Ответ 17

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

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

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

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

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

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

Ответ 18

Расширение Redgate SQL Prompt для SSMS может сделать это.

Это не бесплатно, но по моему опыту это стоит иметь. Лучшая интеллигентность, чем стандартная версия SSMS, раскраска вкладок, история вкладок (так ценно!), Фрагменты, выполнение одного оператора (не только одной строки) и многое другое.

Ответ 19

Чтобы запустить только часть большего скрипта, попробуйте это..

шаги:

  1. Сверните оператор SQL, который вы хотите выполнить, щелкнув знак минуса на левом поле рядом с оператором. Это покажет только первую строку (с многоточием "...", чтобы указать больше не показанного кода) и окончание ";" за утверждение.

  2. Выделите строку.

  3. Нажмите клавишу [F5].

Это запустит только выделенное утверждение. Если вы хотите выполнять более одного оператора за раз, сверните каждый оператор и выделите все, что вы хотите запустить, затем нажмите [F5]. Это обходной путь, но все же гораздо проще, чем каждый раз перетаскивать и выделять многочисленные строки кода.

Ответ 20

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

1 - Нажмите "Сервис" > "Параметры" > "Клавиатура среды"

2 - Для Показать команды, содержащие, установите для этого параметра Query.Execute

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

4 - Для Нажмите сочетания клавиш, выполните комбинацию Ctrl-Enter.

5 - Нажмите "Назначить". Нажмите "ОК".