在表中创建自动生成的时间戳列?

tktrz96b  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(337)

如何在microsoft sql server 2019的表中创建自动生成的时间戳列?插入或更新表时,应该自动生成timestamp列。
在ibm db2数据库中,语法如下:

create table myschema.mytable (col1 int, col2 timestamp not null generated always for each row on update as row change timestamp
    insert into myschema.mytable (col1) values (1)
    update myschema.mytable set col1 = 2

之后 insert / update 柱的 col1 ,列 col2 自动生成为当前时间戳。

lhcgjxsq

lhcgjxsq1#

在microsoft sql server中,可以尝试以下代码:

CREATE TABLE myschema.mytable
(
    col1 int, 
    col2 datetime not null default(current_timestamp)
)

INSERT INTO myschema.mytable(col1) VALUES (1)

UPDATE myschema.mytable SET col1 = 2

SELECT * FROM myschema.mytable

更新:让我们为测试创建临时表

DECLARE @mytable TABLE
(
    col1 int, 
    col2 datetime not null default(current_timestamp)
)

INSERT INTO @mytable(col1) VALUES (1)
SELECT * FROM @mytable

UPDATE @mytable SET col1 = 2
SELECT * FROM @mytable

相关问题