记录添加到表中时记录的日期/时间戳?

时间:2012-05-23 13:01:45

标签: sql sql-server sql-server-2008 sql-server-2005

有没有人知道一个函数,我可以用来在列中添加自动日期和时间戳,以便用户在数据库表中添加记录?

5 个答案:

答案 0 :(得分:43)

您可以在表上创建一个不可为空的DATETIME列,并在其上创建一个DEFAULT约束,以便在添加行时自动填充。

e.g。

CREATE TABLE Example
(
SomeField INTEGER,
DateCreated DATETIME NOT NULL DEFAULT(GETDATE())
)

答案 1 :(得分:4)

您可以在此列上设置默认约束,将默认的getdate()设置为值。

示例:

alter table dbo.TABLE 
add constraint df_TABLE_DATE default getdate() for DATE_COLUMN

答案 2 :(得分:4)

您可以使用datetime字段并将其默认值设置为GetDate()

CREATE TABLE [dbo].[Test](
    [TimeStamp] [datetime] NOT NULL CONSTRAINT [DF_Test_TimeStamp] DEFAULT (GetDate()),
    [Foo] [varchar](50) NOT NULL
) ON [PRIMARY]

答案 3 :(得分:3)

您可以将GetDate()函数作为参数传递给插入查询 e.g

Insert into table (col1,CreatedOn) values (value1,Getdate())

答案 4 :(得分:0)

如果要添加的时间戳是固定的或依赖于另一列,则可以在触发器或计算列上使用DateAdd