我试图创建一个查询,将表rgn_nochp_cdbue的值更新为表rgn_nochp_cdchapterassociation的值。我不认为WHERE子句有任何问题,但是当我运行它时会出现以下错误:
SQL错误:

ERROR:  insert or update on table "bue" violates foreign key constraint "bue_chp_cd_fkey"
DETAIL:  Key (chp_cd)=(CA3) is not present in table "chapter".

非常感谢您的帮助!
SQL查询:
UPDATE bue SET
 rgn_no = chapterassociation.rgn_no,
 chp_cd = chapterassociation.chp_cd
FROM
 chapterassociation
WHERE
 bue.mbr_no IS NULL AND bue.chp_cd IS NULL
 AND bue.work_state = chapterassociation.work_state
 AND bue.bgu_cd = chapterassociation.bgu_cd

最佳答案

读取错误消息:

ERROR: insert or update on table "bue" violates foreign key constraint
"bue_chp_cd_fkey" DETAIL: Key (chp_cd)=(CA3) is not present in table "chapter".

它说您的一个更新想要将chp_cd设置为'CA3',但是CA3不是允许的值,因为外键约束希望值'CA3'出现在表“chapter”中。这就是全部。
查询的语法没有问题,只是查询会导致数据与数据模型中的约束冲突。

关于sql - PostgreSQL数据库-错误协助,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10387188/

10-09 22:59