Нельзя использовать оператор выбора, который присваивает значения переменным, чтобы также возвращать данные пользователю
Приведенный ниже код будет работать нормально, потому что я объявил 1 локальную переменную, и эта переменная используется в операторе выбора.
Begin
DECLARE @name nvarchar(max)
select @name=PolicyHolderName from Table
select @name
END
Приведенный ниже код выдаст ошибку «Оператор SELECT, который присваивает значение переменной
не должен сочетаться с операциями извлечения данных "Поскольку мы извлекаем данные (PolicyHolderAddress) из таблицы, но ошибка говорит, что операция извлечения данных недопустима, когда вы используете некоторую локальную переменную как часть оператора выбора.
Begin
DECLARE @name nvarchar(max)
select
@name = PolicyHolderName,
PolicyHolderAddress
from Table
END
Приведенный выше код можно исправить, как показано ниже,
Begin
DECLARE @name nvarchar(max)
DECLARE @address varchar(100)
select
@name = PolicyHolderName,
@address = PolicyHolderAddress
from Table
END
Так что либо удалите операцию извлечения данных, либо добавьте дополнительную локальную переменную. Это устранит ошибку.