• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 513
  • Last Modified:

tablespace location

How would I find the tablespace of a particular schema?

Please help..
0
walkerdba
Asked:
walkerdba
  • 3
  • 3
  • 2
  • +3
5 Solutions
 
Steve WalesSenior Database AdministratorCommented:
If you're looking for the default tablespace name for a user:

select default_tablespace from dba_users where username = 'YOUR_USER';

If you're looking for all the tablespaces that a user may have quotas on:

select tablespace_name from dba_ts_quotas where username = 'YOUR_USER';
0
 
slightwv (䄆 Netminder) Commented:
To ad to the post above:  A schema in Oracle is just a user that owns objects.  These objects can be in any tablespace.  If you do not declare a specific tablespace when you create the object, it is created in the users 'default' tablespace.

You typically create objects in different tablespaces.  Like one for tables and one for indexes.

You can even create tablespaces with different block sizes for specific objects that may get a performance gain from it.
0
 
walkerdbaAuthor Commented:
SQL> select tablespace_name from dba_ts_quotas where username = 'SCOTT';

no rows selected

SQL> select tablespace_name from dba_ts_quotas where username ='SCOTT';

no rows selected

SQL>

Why it is like this.....?
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
Steve WalesSenior Database AdministratorCommented:
This means that SCOTT has no tablespace as his default and has no quotas on any tablespaces.

If you want to see the tablespaces you do have:

select * from dba_tablespaces;
select * from dba_data_files;
select * from dba_temp_files;
0
 
walkerdbaAuthor Commented:
How can a schema sit nowhere without tablespace?
Scott should be somewhere right?

My mission is to find out which tablespace SCOTT..
0
 
johnsoneSenior Oracle DBACommented:
If you are looking for the tablespaces that the schema is currently using, I would use this:

SELECT DISTINCT TABLESPACE_NAME
FROM DBA_SEGMENTS
WHERE OWNER = 'SCOTT';

If the user has the UNLIMITED TABLESPACE privilesge, then there will be no records in DBA_TS_QUOTAS and there doesn't need to be.
0
 
Steve WalesSenior Database AdministratorCommented:
As slightwv mentioned, a schema in Oracle is just a user that owns objects.

It is possible to create a user that does not have any objects (and hence, all of the above queries would return nothing).

johnsone also makes a valid point, you'd need to check dba_sys_privs (to see which users have that system privilege):

select * from dba_sys_privs where privilege = 'UNLIMITED TABLESPACE';

It sounds like you misunderstand what a schema is in Oracle.  It is a different concept to SQL Server, for example.

It is very possible to have users without objects in Oracle.
0
 
Mark GeerlingsDatabase AdministratorCommented:
A tablespace in Oracle is a physical place (one or more files on disk) that can contain tables and indexes.  A schema is a logical concept in Oracle that by default doesn't correspond to any physical tablespaces.  You can assign a default tablespace to a schema, but that schema is not necessarily limited to creating objects only in its default tablespace.  For example, you can grant a schema the "unlimited tablespace" privilege.  That allows the schema to create objects in any tablespace.
0
 
Geert GruwezOracle dbaCommented:
does user SCOTT actually exist in your database ?

check following query results:

select * from dba_users where username = 'SCOTT';
0
 
walkerdbaAuthor Commented:
I've requested that this question be closed as follows:

Accepted answer: 0 points for walkerdba's comment #a38731912

for the following reason:

yes
0
 
slightwv (䄆 Netminder) Commented:
>> closed by accepting walkerdba's comment #a38731912 (0 points) as the solution for the following reason:  yes

I'm afraid I'll have to object to the way you want to close this.
Please accept the post or posts that assisted you in answering the question.

I suggest a split of the points since it appears several posts helped.
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 3
  • 3
  • 2
  • +3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now