当前位置: 代码迷 >> Sql Server >> 一个关于exec跟日期型数据的语句
  详细解决方案

一个关于exec跟日期型数据的语句

热度:20   发布时间:2016-04-25 01:11:16.0
一个关于exec和日期型数据的语句
SQL code
declare @a smalldatetime,@b int,@bdate smalldatetimeset @a='1905-3-31'set @b=2select @bdate=(dateadd(mm,@b,@a))exec('select * from ABC where BDate='+@bdate+'')

请各位大神帮忙看看,执行结果总是显示  

'31' 附近有语法错误

如果改成BDate="'+@bdate+'"'的话会显示

列名 '05 31 1905 12:00AM' 无效

不知道这条语句到底该怎么写才对

------解决方案--------------------
declare @a smalldatetime,@b int,@bdate smalldatetime
set @a='1905-3-31'
set @b=2
select @bdate=(dateadd(mm,@b,@a))
exec('select * from ABC where BDate='''+@bdate+'''')
  相关解决方案