I have a procedure , in which i am receiving a parameter column name and creating the dynamic query by substituting column name.
when i am directly running this dynamic query its working fine.
declare @a datetime,
@b varchar(50) ='CREATED_DATE',--column name
@query varchar(500);
select @a= CONVERT(datetime,LAST_RUN_PROC,121) from TEST_TABLE_MASTER
exec( 'select '+@b+' from TEST1 where '+@b+' = '+''''+@a+'''' )
But when i am storing query in a variable and then executing,its showing error. Below code showing error
declare @a datetime,
@b varchar(50) ='CREATED_DATE',--column name
@query varchar(500);
select @a= CONVERT(datetime,LAST_RUN_PROC,121) from TEST_TABLE_MASTER
SET @query= 'select '+@b+' from TEST1 where '+@b+' = '+''''+@a+'''' --this line showing error Conversion failed when converting date and/or time from character string.
exec (@query)
I got stuck here.please help