SQL Server 数据库服务器:参数中的DATEADD值返回错误

euoag5mw  于 2022-11-21  发布在  其他
关注(0)|答案(1)|浏览(140)

我建了一个程序要运行60天。我好像搞不懂。
我得到了下面的日期参数语句,它们返回

select dateadd(Day, -60, getdate()), dateadd(Day, -1, getdate())

代码本身将结束日期调整为一天的最后一天。23:59:59。
当我这么做的时候

exec LRP_PROC 
         @start_Dt = dateadd(Day, -60, getdate()),
         @end_dt = dateadd(Day, -1, getdate()),
         @mode = 0

我收到以下错误

我不知道我做错了什么。

  • 谢谢-谢谢
2vuwiymt

2vuwiymt1#

SQL Server 不 允许 将 任意 表达式 作为 存储 过程 参数 传递 。 在 调用 过程 之前 , 需要 声明 并 分配 局部 变量 。
例如

declare @start datetime = dateadd(Day, -60, getdate());
declare @end datetime = dateadd(Day, -1, getdate());

exec LRP_PROC @start_Dt=@start, @end_dt=@end, @mode = 0;

中 的 每 一 个

相关问题