read-only-clause
只读条款指定结果表为只读。 因此,在已定位的UPDATE或DELETE语句中不能引用游标。
只读子句的语法
只读条款描述
某些结果表是只读的(例如,基于只读视图的表) 对于此类表,仍可指定 FOR READ ONLY,但该规范不起作用。
对于允许更新和删除的表,指定“只读”可以提高FETCH操作的性能,因为 Db2 可以阻止并避免独占锁。 例如,在包含动态 SQL 语句且没有 FOR READ ONLY 或 ORDER BY 子句的程序中, Db2 可能会打开游标,就像指定了 UPDATE 子句一样。
UPDATE或DELETE语句中不能引用只读结果表,无论该表是只读性质还是指定为只读。
为了利用FETCH操作可能提高的性能,同时确保所选数据不被修改并防止某些类型的死锁,您可以指定FOR READ ONLY,并与可选的USE AND KEEP语法结合使用…… 锁定隔离条款。
其他语法和同义词 :FOR FETCH ONLY可以作为FOR READ ONLY的同义词。
