У нас есть SP, в котором мы строим запрос, а затем выполняем запрос с помощью вызова exec(@select)
, где переменная, которая содержит SQL-запрос в том виде, как он построен, равна @select
.
Мне был назначен запрос на добавление нового столбца в набор результатов, возвращенный SP. Этот новый столбец не должен возвращаться при любых обстоятельствах, но только при определенных условиях. Естественно, я добавил следующий код в SP.
IF @conditionIsMet
BEGIN
set @select = @select + ", 'compQty' = convert(varchar(53), di.qty) "
END
Это работало нормально до сегодняшнего дня, когда мое приложение продолжает выдавать исключение SQL с сообщением "Недопустимое имя столбца: compQty". Это ошибочно, и исключение не всегда выбрасывается.
Выполнение SP в SQL Server Management Studio не дает ошибок. Столбец отображается с заголовком «compQty». Таким образом, приложение должно поднять столбец, но это не похоже на !!
Может ли кто-нибудь помочь?