38

有谁知道这样的功能,当用户向数据库表中添加记录时,我可以使用它在列中添加自动日期和时间戳?

4

5 回答 5

59

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

例如

CREATE TABLE Example
(
SomeField INTEGER,
DateCreated DATETIME NOT NULL DEFAULT(GETDATE())
)
于 2012-05-23T13:05:37.523 回答
6

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

例子:

alter table dbo.TABLE 
add constraint df_TABLE_DATE default getdate() for DATE_COLUMN
于 2012-05-23T13:05:34.820 回答
5

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

CREATE TABLE [dbo].[Test](
    [TimeStamp] [datetime] NOT NULL CONSTRAINT [DF_Test_TimeStamp] DEFAULT (GetDate()),
    [Foo] [varchar](50) NOT NULL
) ON [PRIMARY]
于 2012-05-23T13:07:00.310 回答
3

您可以将GetDate()函数作为参数传递给插入查询,例如

Insert into table (col1,CreatedOn) values (value1,Getdate())
于 2012-05-23T13:06:57.677 回答
0

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

于 2012-05-23T13:03:49.190 回答