我有两个用户USER1
和USER2
。 USER1
有权使用create table
,USER2
没有此权限。
USER1
创建了一个名为EMPLOYEE
的表,并将该表的select
权限授予USER2
:
====== 使用USER1凭据 =======
1)创建表格 -
CREATE TABLE EMPLOYEE
(
EMP_ID NUMBER,
EMP_NAME VARCHAR2 (20 BYTE)
);
2)授予user2
的权限GRANT SELECT ON EMPLOYEE TO USER2;
====== 使用USER2凭据 =======
现在我想使用EMPLOYEE
凭据访问USER2
表:
SELECT * from EMPLOYEE
但它给出了错误:
ORA-00942: table or view does not exist
请告诉我这里我做错了什么?
答案 0 :(得分:2)
试试这个
SELECT * from USER1.EMPLOYEE;
如果EMPLOYEE表没有公共同义词,则可能会发生这种情况。所以你需要使用owner.object引用
如果没有得到结果,请发布
的结果SELECT
OWNER,
TABLE_NAME
FROM
ALL_TABLES
WHERE
TABLE_NAME IN ('EMPLOYEE');