我使用Postgres数据库进行复制。
我在postgres函数中使用了临时表。通过联接更新临时表时,我无法更新。
下面是Postgres查询(tempallergyupdates
是临时表):
drop table if exists tempallergyupdates;
create temp table tempallergyupdates(patientallergyid int,updateid int, newupdateid int);
update tempallergyupdates set patientallergyid = 1;
以上查询引发以下异常:
无法更新表“ tempallergyupdates”,因为该表没有 副本身份并发布更新
答案 0 :(得分:1)
我们刚遇到此问题并找到了解决方案。事实证明,PostgreSQL不喜欢缺少主表(涉及复制)的表,甚至临时表。因此,要么在您的临时表中添加一个,要么在创建表后使用如下语句:
ALTER TABLE table_name REPLICA IDENTITY FULL;