执行附加日期的存储过程

Executing stored procedure with date attached

每天我都必须运行 执行存储过程的代码。我在它后面硬编码了昨天的日期。

执行 sprm_example '2021-03-10'

我试过:

执行 sprm_example 'getdate()-1' 执行 sprm_example 'cast(getdate()-1 as date)'

这些都不起作用,而且没有引号也不起作用。有什么想法吗?

SQL 服务器不允许在过程调用中使用表达式,但您可以使用变量。所以:

declare @date date;

select @date = dateadd(day, -1, getdate());

EXECUTE sprm_example @date;