【发布时间】:2020-10-30 07:39:07
【问题描述】:
我想在 Postgresql 9.4 中的表上执行此操作,以便在更新语句上自动更新列,就像它在 MySQL 5.6 中的工作方式一样,无需触发器?
create table test
(
id varchar(10),
updated timestamp not null default now() ON UPDATE now()
)
Postgresql 在 UPDATE 之前对单词 ON 给出错误
错误:在“ON”或附近出现语法错误 SQL 状态:42601 字符:133
【问题讨论】:
-
Postgres 没有对应的语法。你需要一个触发器。
-
@Belayer 您好,感谢您的回答。我想知道您是否知道在具有此类列的所有表上创建触发器会降低每天大量事务的性能?还是您更愿意在生成更新时在后端代码 C# 中处理此列更新?
-
@MaximusDecimus,我怀疑性能下降甚至会很明显
-
触发器的性能影响是可衡量的。但是您必须进行测试以查看是否有问题。
标签: sql postgresql timestamp