update-clause
FOR UPDATE 節は、その後の位置指定 UPDATE ステートメント内の代入節でターゲットとなる列を指定します。 各 column-name (列名) は非修飾でなければならず、 全選択の最初の FROM 節で指定された表またはビューの列を指定するものでなければなりません。
column-name リストと FOR UPDATE 節を指定し、拡張標識変数を使用可能にしない場合は、column-name は更新可能列でなければなりません (SQLSTATE 42808)。
column-name リストを指定せずに FOR UPDATE 節を指定する場合は、以下のように暗黙的な column-name リストが判別されます。
- 拡張標識変数を使用可能にする場合は、全選択の最初の FROM 節に指定された表またはビューの列すべてが組み込まれます。
- 拡張標識変数を使用可能にしない場合は、全選択の最初の FROM 節に指定された表またはビューの列のうち更新可能な列すべてが組み込まれます。
以下の条件のいずれかに該当する場合、FOR UPDATE 節は使用できません。
- 選択ステートメントに関連付けられているカーソルが削除不能である。
- 選択された列のいずれかがカタログ表の更新不能な列であり、 FOR UPDATE 節を使ってその列が除外されていない。
