我希望代码能够在插入新行时自动更新时间戳,就像我在 MySQL 中使用 CURRENT_TIMESTAMP 所做的那样。
我将如何在 PostgreSQL 中实现这一点?
CREATE TABLE users ( id serial not null, firstname varchar(100), middlename varchar(100), lastname varchar(100), email varchar(200), timestamp timestamp )
要在插入期间填充列,请使用一个DEFAULT值:
DEFAULT
CREATE TABLE users ( id serial not null, firstname varchar(100), middlename varchar(100), lastname varchar(100), email varchar(200), timestamp timestamp default current_timestamp )
INSERT请注意,可以通过在语句中提供值来显式覆盖该列的值。如果你想阻止你确实需要一个触发器。
INSERT
如果您需要在更新行时更新该列,则还需要一个触发器
请注意,对列名使用保留字通常不是一个好主意。你应该找到一个不同的名字timestamp
timestamp