Oracle入门精读46-Oracle默认表空间应用详解(default tablespace)

1)显示当前默认表空间

SQL>select property_name,property_value from database_properties

where property_name in('DEFAULT_PERMANENT_TABLESPACE','DEFAULT_TEMP_TABLESPACE');

2)设置默认表空间

SQL>alter database default tablespace SAMPLE5;

3)设置默认临时表空间:

SQL>alter database default temporary tablespace TEMP3;

4)如果在创建用户时指定了默认表空间为DEFAULT_PERMANENT_TABLESPACE的值,那么在修改数据库的默认表空间后,之前用户的默认表空间也会发生改变。

演示案例,如下

SQL>   CREATE USER U1 IDENTIFIED BY U1 DEFAULT TABLESPACE USERS;

SQL>  SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS

WHERE USERNAME ='U1';

SQL> ALTER DATABASE DEFAULT TABLESPACE SAMPLE5;

       修改了默认永久性表空间后,此时查看用户U1的DEFAULT_TABLESPACE值,发现改为SAMPLE5

SQL> SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME ='U1';

5)如果我们在创建用户时没有指定用户表的默认表空间,那么默认也会使用DB的默认表空间

这时候如果我们修改了DB的默认表空间,用户的表空间也会发生改变。

SQL>  ALTER DATABASE  DEFAULT TABLESPACE USERS;

SQL> CREATE USER U2 IDENTIFIED BY U2;

SQL> SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME ='U1';

SQL> ALTER DATABASE DEFAULT TABLESPACE SAMPLE5;

SQL> SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME ='U1';

6)如果我们在创建用户指定用户的默认表空间是其他的表空间,那么我们修改DB的默认表空间不会影响用户的表空间。

SQL> CREATE USER U3 IDENTIFIED BY U3 DEFAULT TABLESPACE SAMPLE2;

SQL> SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME='U3';

SQL> ALTER DATABASE DEFAULT TABLESPACE USERS;

SQL> SELECT USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE FROM DBA_USERS WHERE USERNAME='U3';

7)数据库的默认表空间不能删除,除非将默认表空间指向其他表空间之后才可以删除。

SQL> DROP TABLESPACE USERS;

DROP TABLESPACE USERS

ORA-12919: 不能删除默认永久表空间

8)如果用户的默认表空间指向其他的表空间,比如上述6)中案例,当这个表空间被drop 之后,用户的默认表空间会自动指向DB的默认表空间。

SQL> DROP TABLESPACE SAMPLE2;

上述语句执行完成后,用户的默认表空间会自动指向DB的默认表空间USERS

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值