Sql server 2008 是否可以在存储过程参数中设置当前日期?

Sql server 2008 是否可以在存储过程参数中设置当前日期?,sql-server-2008,tsql,datetime,Sql Server 2008,Tsql,Datetime,我想将GetDate()设置为默认参数值。但它显示出错误。下面是我的代码块: Create Proc XYS ( @myDate datetime = GetDate() //error ) AS SET @myDate = GetDate() // i can do this but neither i want this nor I want to pass current date from front end or upp

我想将GetDate()设置为默认参数值。但它显示出错误。下面是我的代码块:

Create Proc XYS
(
   @myDate datetime = GetDate()  //error

)
AS
SET @myDate = GetDate() // i can do this but neither i want this nor I want to 
                           pass current date from front end or upper layer


....
....

据我所知,此级别不支持函数/动态值,而是允许硬编码值。任何解决方法?

都建议使用一个值(例如,0=最小日期时间),然后在存储过程中检查该值:

Create Proc XYS
(
   @myDate datetime = 0)
AS
BEGIN
    IF @myDate = 0
        SET @myDate = GetDate()

    // ...
END

我并不是说这是世界上最好的主意,但它对我很有用:

CREATE VIEW dbo.V_GetDate
AS
SELECT     GETDATE() AS TheDate
然后

可能重复:请检查此项-
Create Proc XYS
AS
declare @myDate datetime
Select @myDate = TheDate from dbo.V_GetDate