设置整数默认值 - SQL Server 2005

时间:2014-01-27 15:56:45

标签: sql-server sql-server-2005 stored-procedures

我试图在存储过程中将整数设置为默认值,如下所示:

CREATE PROCEDURE SomeSProc
    @Year int = datepart(year, getdate()) 
AS
BEGIN
...

我一直收到这个错误:

  

'('。

附近的语法不正确

但看不出有什么不妥。

1 个答案:

答案 0 :(得分:3)

你需要一个常量表达式,NULL是一个常见的选择;

CREATE PROCEDURE SomeSProc
    @Year int = null
AS
BEGIN

if (@Year is null)
    set @year = datepart(year, getdate())