1

使用 Oracle VPD 工具(又名 RLS,又名 FGAC),假设我使用谓词

(WHERE) id = 'XXXX'

onTableA然后我使用谓词

(WHERE) col in (SELECT col From TableA)

TableB

会不会TableA被过滤?当您查询表时,过滤是否仅在谓词定义之外进行?我需要TableB像这样做谓词吗?:

(WHERE) col in (SELECT col From TableA where id ='XXXX')
4

1 回答 1

0

是的,TableA将使用您指定的谓词自动过滤(id = 'XXXX')select from如果满足过滤条件(请参阅 sec_relevant_cols),Oracle 会自动在您使用表的任何位置(在本例中为 )应用过滤器,即使在子查询中也是如此。

于 2009-11-08T22:28:36.937 回答