存储过程动态查询
我在地球 2007-07-30 03:23:05 参数 传入SqlParameter paraphotoDate=new SqlParameter("PhotoDate",SqlDbType.datetime,8);
存储过程中拼接sql语句:
Declare @sqltext As varchar(1000)
Declare @sqlstr As varchar(1000)
@sqlstr='Datediff(day,uptime,'+@PhotoDate+')'
@sqltext='select * from table where'+@sqlstr+' order by id desc'
exec(@sqltext)
Go
问题出在:'Datediff(day,uptime,'+@PhotoDate+')'
这里改如何写呢?
因为@PhotoDate是时间类型才能在 DateDiff函数中使用
,但提示:
从字符串转换为 datetime 时发生语法错误。
也许在传送时都是以 字符串 形式传输的。