Musisz zadeklarować zmienną skalę

Napisałem ten SQL w procedurze przechowywanej, ale nie działa,

declare @tableName varchar(max) = 'TblTest'
declare @col1Name varchar(max) = 'VALUE1'
declare @col2Name varchar(max) = 'VALUE2'
declare @value1 varchar(max)
declare @value2 varchar(200)

execute('Select TOP 1 @value1='+@col1Name+', @value2='+@col2Name+' From '+ @tableName +' Where ID = 61')

select @value1

execute('Select TOP 1 @value1=VALUE1, @value2=VALUE2 From TblTest Where ID = 61')

Ten SQL zgłasza ten błąd:

Musi zadeklarować zmienną skalarną „@ value1”.

Generuję SQL dynamicznie i chcę uzyskać wartość w zmiennej. Co powinienem zrobić?

questionAnswers(4)

yourAnswerToTheQuestion