I am trying to execute a dynamic query in which I am concatenating a date but failed in doing
DECLARE @pStartDate datetime
DECLARE @pEndDate datetime
DECLARE @query nvarchar(MAX)
Dynamic query1
set @query = 'Select * from Table1 From tblEvent
Where (EventDate Between' + @pStartDate + ' and ' + @pEndDate +')'
Exec(@query)
Error
Conversion failed when converting date and/or time from character string.
Dynamic query2
set @query = 'Select * from Table1 From tblEvent
Where (EventDate Between' + cast(@pStartDate as varchar) + ' and ' + cast(@pEndDate as varchar) +')'
Exec(@query)
Error
Incorrect syntax near 1 [1 stands for whatever date I passed to @pStartDate]
Please suggest me how to do it.
Thanks.