I need to update a specific set of columns with null value, but when I'm trying to pass null value to dynamic SQL I'm not getting any error or output.
DECLARE @Value VARCHAR(100)
SELECT @Value = null
DECLARE @TableName VARCHAR(1000),@ColumnName VARCHAR(100)
DECLARE @Sql NVARCHAR(MAX)
SET @Sql= N''
DECLARE UpdatePlantId_Crsr CURSOR
STATIC FOR
SELECT ST.name AS TableName,SC.name AS ColumnName
FROM
sys.columns SC
INNER JOIN
sys.tables ST ON ST.object_Id = SC.Object_Id
WHERE
SC.name like '%_MLP'
--AND ST.name not like 'tPlant'
OPEN UpdatePlantId_Crsr
IF @@CURSOR_ROWS > 0
BEGIN
FETCH NEXT FROM UpdatePlantId_Crsr INTO @TableName,@ColumnName
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Sql= N''
SELECT @Sql = @Sql + N' UPDATE '+@TableName +' SET '+@ColumnName+ '= '+ @Value +'
'
PRINT @Sql
--EXEC(@Sql)
FETCH NEXT FROM UpdatePlantId_Crsr INTO @TableName,@ColumnName
END
END
CLOSE UpdatePlantId_Crsr
DEALLOCATE UpdatePlantId_Crsr