CREATE PROCEDURE [dbo].[updateTempTable] 
@tbname varchar(100) 
AS 
BEGIN 
    declare @tempOfferId char(50) 
    declare @topCats     varchar(200) 
    declare @subCats     varchar(300) 
    declare @sqlStr      nvarchar(1000) 
    DECLARE rs CURSOR LOCAL SCROLL FOR 
    select offer_id from compare_task_detail_result 
    open rs 
    fetch next from rs into @tempOfferId 
    WHILE @@FETCH_STATUS = 0 
    Begin 
        set @sqlStr=' select @topCats = Category,@subCats = ItemProviderCategory from ' + @tbname + ' where Id='+@tempOfferId; 
        
        EXEC SP_EXECUTESQL @sqlStr,N'@topCats varchar(200) out,@subCats varchar(300) out', @topCats out,@subCats out        update compare_task_detail_result 
        set offer_category=@topCats,offer_ItemProviderCategory=@subCats 
        where offer_id = @tempOfferId 
        fetch next from rs into @tempOfferId 
    end 
    close rs 
END