доступ к таблице полон даже после создания индекса для второй таблицы - PullRequest
0 голосов
/ 24 января 2019

Я создал две таблицы tab1 и tab2 в user1, а user2 имеет право доступа к ней. table1 и table2 - это синонимы, созданные в user2 для tab1 и tab2 соответственно.

Теперь я создал представление для пользователя 2, соединив (внутреннее объединение) эти две таблицы, и запрос представления имеет полный доступ к обеим таблицам согласно плану объяснения, который я создал.

Таблица2 проиндексирована.

структура запроса и таблицы находится в части запроса:

Table1:

Name     Null?    Type       
-------- -------- ---------- 
PERSONID NOT NULL NUMBER(38) 
TASKID            NUMBER(38) 

table2

Name Null?    Type         
---- -------- -------------------------------------  
ID   NOT NULL NUMBER(38)   
TASK          VARCHAR2(25) (task column is indexed)

Запрос TaskView:

Create or replace view TaskView AS select t1.personid,t1.taskid,t2.task from table1 t1 INNER JOIN table2 t2
on t1.taskid=t2.id where t2.task is not null ORDER BY t1.personid;

Объяснить план:

explain plan set STATEMENT_ID='task_test1' for select * from taskview;
...