Я предпочитаю просто использовать сохраненные процедуры для извлечения набора данных и выполнять любую сложную «работу» на стороне приложения. Поскольку вы правы, попытка «отладить» то, что происходит внутри кишок многоуровневой цикличной работы курсора с использованием временных таблиц с использованием вложенного хранимого процесса, очень трудна.
Тем не менее, MS KB 316549 описывает, как использовать Visual Studio для отладки хранимых процедур.
Согласно этой статье, существует ряд ограничений для отладки таким способом:
- Вы не можете "прервать" исполнение.
- Вы не можете «редактировать и продолжить».
- Вы не можете изменить порядок выполнения оператора.
- Хотя вы можете изменить значение переменных, ваши изменения могут не вступить в силу, поскольку значения переменных кэшируются.
- Вывод из оператора SQL PRINT не отображается.
Редактировать : Очевидно, что если вы являетесь человеком, который делает этот сохраненный процесс, то не делайте его "многоуровневым, циклическим перемещением курсора, использованием временной таблицы и вложенным ». Однако в моей роли администратора баз данных это почти то, с чем я ежедневно сталкиваюсь от разработчиков приложений.