Нет прямого способа заставить скрипт T-SQL приостановить работу и ждать ввода пользователя.Команда WAITFOR заставит выполнение ждать определенный период времени, но не разрешит взаимодействие с пользователем.
(Очень) грубое решение состоит в том, чтобы разбить процесс на маленькие кусочки скрипта и контролировать их выполнение.через старый добрый сценарий BATCH.Например: -
SQLCMD -S <servername> -E -I <path_to_script_one>
PAUSE
SQLCMD -S <servername> -E -I <path_to_script_two>
Очевидно, что у этого подхода есть и недостатки;обработка ошибок становится громоздкой и проблематичной, поскольку нет простого способа определить успех или неудачу.Команды BATCH относительно ограничены, хотя различные языки сценариев могут предоставлять больше функциональности.
Существуют проблемы безопасности, если вы разрешаете пользователю вводить значения для параметров, которые приводят к динамическим операторам SQL.
Если вы хотите "богатый" опыт, вы должны рассмотреть пользовательский интерфейс, созданный с помощью инструмента по вашему выбору ...