Мне нужно обновить таблицу со значениями, передаваемыми в качестве параметров из настольного приложения.Но каждый раз, когда я пытаюсь выполнить запрос, я просто получаю эту ошибку:
Сообщение 245, Уровень 16, Состояние 1, Строка 5 Преобразование завершается неудачно при преобразовании значения varchar 'UPDATE table SET TypeId =' втип данных int.
Я попытался изолировать проблему, сократив код до минимума, и ниже приведен краткий фрагмент моего фактического кода, и проблема по-прежнему возникает.Я полагаю, что, скорее всего, это проблема синтаксиса, но, посмотрев некоторое время на похожие проблемы, я все еще не могу разобраться с этой проблемой.
DECLARE @typeId int = 175;
DECLARE @item varchar(20)= 'ABC123'
DECLARE @SQLScript varchar(5000);
SET @SQLScript = 'UPDATE
table
SET
TypeId = ' + @typeId + '
WHERE item = ''' + @item + '''
'
Print(@SQLScript);
Что я ожидаю получить в результатеиз печати (@SQLScript) это запрос:
UPDATE
table
SET
TypeId = 175
WHERE
item = 'ABC123'