Estoy intentano crear un instruccion update con columna dinamica con lo siguiente:
Código SQL:
[/CODE]Ver original
ALTER PROCEDURE [dbo].[UpdateTemporalDataPMO] @oldStatus INT, @CountryName VARCHAR(90) AS DECLARE @intTotal INT DECLARE @SQL VARCHAR(MAX) DECLARE @ColumnName VARCHAR(90) DECLARE @tableName VARCHAR (70) BEGIN try --SET @ColumnName=@CountryName SET @tableName='TemporalDataPMO' SET @intTotal=300 --SET @sql='Select * from [dbo].[TemporalDataPMO]' ----SET @sql=Update [dbo].[TemporalDataPMO] SET + 'Belgium=' + 100 Where IdState=35 SET @SQL = @SQL + 'UPDATE ' + @tableName + ' SET ' + @CountryName +' = '+ CONVERT(nvarchar(2),@intTotal ) + ' WHERE IdState='+CONVERT(nvarchar(2),@oldStatus ) + ';' EXEC(@SQL) END try BEGIN CATCH ---- Execute error retrieval routine. --EXECUTE usp_GetErrorInfo; PRINT N'Error = ' + CAST(@@ERROR AS NVARCHAR(8)); END CATCH;
Me está devolviendo un error de conversion ¿como puedo pasarle un id (int ) a la query dinamica?
No acaba de hacer el update.
Gracias por la ayuda.
Saludos