0

テーブル内の値をrgn_noテーブルchp_cd内の値に更新するクエリを作成しようとしています。WHERE 句に問題はないと思いますが、実行すると次のエラーが発生します。buergn_nochp_cdchapterassociation

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
4

1 に答える 1

3

エラー メッセージを読みます。

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".

更新の 1 つが chp_cd を 'CA3' に設定しようとしているが、外部キー制約が値 'CA3' をテーブル "chapter" に存在させる必要があるため、CA3 は許可された値ではないと言っています。それだけです。

クエリの構文に問題はありません。クエリによってデータがデータ モデルの制約と競合するという事実だけです。

于 2012-04-30T16:40:23.920 に答える