ページの先頭行へ戻る
Enterprise Postgres 17 リリース情報

2.3.217 ビューに対する SELECT FOR UPDATE の動作変更

非互換

FUJITSU Enterprise Postgres 11では、入れ子になったビューにおいて、親のビューに対してユーザーにUPDATE権限がない場合、子のビューにUPDATE権限があっても、子のビューを通したSELECT FOR UPDATEを実行できないように変更します。

FUJITSU Enterprise Postgres 10以前の場合

正常終了し、SELECT結果が返却されます。

[例]

=> SELECT * FROM v1 FOR UPDATE;
 c1 | c2 | c3 | c4 
----+----+----+----
  1 | aaa|  2 |  1
(1 行)
FUJITSU Enterprise Postgres 11の場合

UPDATE権限がないビューに関して、アクセスが拒否され、エラーとなります。

[例]

=> SELECT * FROM v1 FOR UPDATE;
ERROR:  ビュー t1 へのアクセスが拒否されました

対処方法

更新対象の全てのビューに対するUPDATE権限をユーザーに付与してください。