将日期时间值添加小时的语法是什么?

时间:2013-03-20 13:52:23

标签: sql sql-server-2008 date

我的触发器是这样的:

CREATE TRIGGER trCreatedDate ON [LasMTest]

FOR INSERT 

AS

UPDATE [LasMTest] SET [LasMTest].Created=getdate()

FROM [LasMTest] INNER JOIN Inserted ON [LasMTest].[ID]= Inserted.[ID]

GO

将8小时添加到当前日期时间[LasMTest].Created=getdate()的语法是什么?

2 个答案:

答案 0 :(得分:6)

DATEADD将帮助您完成此任务,如下所示:

[LasMTest].Created = DATEADD(hh, 8, GETDATE())

答案 1 :(得分:2)

为什么需要触发此操作?最好使用默认约束。 你甚至可以在其中使用dateadd():

create table _TEst (
z int, 
x datetime default dateadd(hour,3,getdate() )
)
insert into _TEst(z) select 1 as z
select * from _test