Ответ 1
Пока я не могу найти какую-либо документацию, где бы то ни было, явным образом заявляю, что вы не можете проверять переменные таблицы, я не думаю, что это возможно. Из Отладчик Transact-SQL
Локальные и Часы. Эти окна отображают текущие выделенные выражения Transact-SQL. Выражения представляют собой предложения Transact-SQL, которые оцениваются одним, скалярным выражением. Отладчик Transact-SQL поддерживает просмотр выражений, которые ссылаются на переменные Transact-SQL, параметры или встроенные функции, имена которых начинаются с @@. Эти окна также отображают значения данных, которые в настоящее время назначены выражениям.
(Мой акцент)
То есть вы можете проверять только скаляры.
Что касается вашей попытки использовать окно Immediate, Ограничения в команде и функциях отладчика говорит:
Отображается окно Немедленное, но вы ничего не можете с ним поделать, например, установить переменную в значение или запросить базу данных.
Я никогда не использовал отладчик много - каждый раз, когда я изучал его, я сталкивался с такими ограничениями.
Вот почему я все-таки склонен использовать подходы "old-skool" / "printf" для отладки SQL - добавьте дополнительные SELECT *
либерально в код, показывающий текущее состояние таблиц, а также дополнительные сообщения PRINT
или RAISERROR
которые показывают другие состояния и т.д. И тогда просто запускайте код нормально, пока вы не набросаете его на фигуру.