【发布时间】:2014-09-26 17:59:36
【问题描述】:
我正在使用以下存储过程,它将日期时间变量作为输入
ALTER PROCEDURE dbo.report @createfrom as datetime=null,@createto as datetime=null
AS
BEGIN
declare @sql varchar(1000)
declare @s datetime;
declare @s1 datetime;
--set @createfrom='7/7/2014 12:00:00 AM'(my input is like in this format)
set @sql = N'select * from table1 where createdon >=''' + cast(@createfrom as datetime) + '''and createdon <=''' + cast(@createto as datetime) + ''' AND createdon is not null'
exec(@sql)
END
我不知道我做错了什么。 createdon 是表 1 中的 datetime 变量。我已经在代码本身中给出了输入参数格式。我想坚持cast 而不是convert
【问题讨论】:
标签: sql tsql datetime stored-procedures type-conversion