Question

I've just imported an ORACLE database into an instance of Oracle 10 XE running on a Linux system.

The database has tables split across a number of tablespaces, and the sys user is able to access all the tables without problem.

I've created a new user (fred) and I'm unable to access any of the tables whilst logged on as this user. I've set the user's default tablespace in an attempt to be able to access the tables whilst logged on as fred.

alter user fred default tablespace t1;

When I then connect as fred and attempt to look at a table in tablespace t1, I receive the following error:

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

How can I configure the user fred, so that he can easily access all the tables in the various tablespaces (t1, t2, t3... t6), like the user sys currently can?

I've never really dabbled with oracle in the past, but have used MS SQL quite extensively.

Was it helpful?

Solution

In Oracle the concept of schemas and users is different than that of other DBMS. In order to get table access for user fred, you will need to create synonyms of those table and sys user needs to issue grants (eg select, update e.t.c) on those tables.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top