【发布时间】:2010-06-19 10:20:39
【问题描述】:
我想知道为什么我不能将 SP 日期时间参数的默认值设置为 getdate(),如下所示:
Create PROCEDURE [dbo].[UPILog]
(
@UserID bigint,
@ActionID smallint,
@Details nvarchar(MAX) = null,
@Created datetime = getdate()
)
如果我尝试保存它会给我一个编译器错误
Msg 102, Level 15, State 1, Procedure UPILog, Line XX
Incorrect syntax near '('.
编辑: 我知道我可以像下面那样做
Create PROCEDURE [dbo].[UPILog]
(
@UserID bigint,
@ActionID smallint,
@Details nvarchar(MAX) = null,
@Created datetime = null
)
AS
if @Created is null
SET @Created=getdate() ...
【问题讨论】:
标签: sql-server-2005 stored-procedures