У меня есть хранимая процедура, которая использует динамический sql для построения сложного запроса для отчета. В какой-то момент он вызывает exec(@sql)
прямо перед открытием курсора ... Я считаю, что это ошибка, и команда exec(@sql)
может быть удалена, поскольку она выполняется индивидуально и не требуется использовать курсор ...SQL Quursor quandry
Am I правильно? Вот фрагмент:
-- before this it's just doing string concatenation
SET @sql = N'DECLARE cc CURSOR STATIC FOR ' + @sql
exec(@Sql) --<-- is this needed here?
OPEN cc
Не открывает курсор, эффективно запускает SQL внутри курсора?
ОК, это имеет смысл. Не используется для неуклюжих динамических SQL-файлов. Не видел это годами. Это более старая система. –