Du bliver nødt til at bruge Dynamic SQL - du kan ikke bruge parametre som tabel- eller kolonnenavne. Så noget i stil med:
CREATE TABLE #temp (newcol nvarchar(500)) -- Use the type you're getting out of @TableName
DECLARE @TableName nchar(20) = 'MyTable'
DECLARE @ColumnName nchar(20) = 'MyColumn'
EXEC('INSERT INTO #temp SELECT [' + @ColumnName + '] FROM [' + @TableName + ']')
DECLARE UpdateList CURSOR FOR
SELECT newcol FROM #temp
OPEN UpdateList
Husk sikkerheds- og ydeevneproblemerne forbundet med dynamisk SQL - jeg ved ikke, hvordan du vil udfylde variablerne her, og der kan være en klar fare ved at gøre dette.
EDIT:Tilføjet fuld kode.