![](/img/trans.png)
[英]PostgreSQL Trigger Insert in table B after insert in table A with a foreign key
[英]Does trigger(after insert) on table slow down inserting into this table
我有一个大表( bo_sip_cti_event
),它太大了甚至不能对此运行查询所以我创建了相同的表( bo_sip_cti_event_day
),在bo_sip_cti_event
上插入后添加了触发器以将所有相同的值添加到bo_sip_cti_event_day
现在我在想是否我显着减慢了插入bo_sip_cti_event
。
所以一般来说,在这个表上插入减速操作后会触发吗?
是的,触发器必须减慢插入速度。
原因是关系数据库符合ACID :所有操作(包括触发器等副作用)必须在更新事务完成之前完成。 因此触发器必须同步执行,并且消耗CPU,在您的情况下也是I / O,最终需要更多时间。 没有绕过它。
答案是肯定的:它是额外的开销,因此显然需要时间来完成附加触发器执行的事务。
你的设计让我想知道:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.