Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

OnUpdate (外部キーのキーワード)

外部テーブルのレコードのキー値が更新され、そのレコードが現在のテーブルのレコードで参照されている場合に、現在のテーブルでこの外部キーが実行するアクションを指定します。

使用法

外部テーブルの参照されているレコードのキー値が更新されたときに、現在のテーブルで実行するアクションを指定するには、以下の構文を使用します。

ForeignKey keyname(key_props) References pkg.class(ref_index) [ OnUpdate = onupdate ];

onupdate は以下のいずれかになります。

  • noaction (既定値) — 外部テーブルの参照されているレコードのキー値の更新を試みた場合、失敗します。

  • cascade — 外部テーブルの参照されているレコードのキー値を更新した場合、参照元レコードの外部テーブルへの参照も更新されます。

  • setdefault — 外部テーブルで参照先レコードのキー値を更新すると、参照元レコードでのその外部テーブルへの参照はその既定値に設定されます。

  • setnull — 外部テーブルの参照されているレコードのキー値を更新した場合、参照元レコードの外部テーブルへの参照は NULL に設定されます。

詳細

外部テーブル内の行のキー値を更新する場合、その外部テーブルに外部キー制約が設定されているすべての参照元テーブルで、更新する行を参照している行があるかどうかがチェックされます。このような参照が見つかった場合、OnUpdate アクションは有効になります。

既定値

既定値は noaction です。

関連項目

FeedbackOpens in a new tab