新的oracle用户无法访问表

时间:2011-11-22 09:52:19

标签: sql oracle oracle-xe tablespace

我刚刚将一个ORACLE数据库导入到Linux系统上运行的Oracle 10 XE实例中。

数据库的表分为多个表空间,sys用户可以毫无问题地访问所有表。

我创建了一个新用户(fred),但在以此用户身份登录时,我无法访问任何表。我设置了用户的默认表空间,试图在以fred身份登录时访问这些表。

alter user fred default tablespace t1;

当我以fred身份连接并尝试查看表空间t1中的表时,收到以下错误:

describe table1;
ERROR:
ORA-04043: object table1 does not exist

如何配置用户fred,以便他可以轻松访问各种表空间(t1,t2,t3 ... t6)中的所有表,就像用户sys当前可以一样?

我过去从未真正涉足过oracle,但已广泛使用过MS SQL。

2 个答案:

答案 0 :(得分:3)

在Oracle中,模式和用户的概念与其他DBMS的概念不同。为了获得用户fred的表访问权限,您需要创建这些表的synonyms和sys用户需要在这些表上发布授权(例如select,update e.t.c)。

答案 1 :(得分:0)