在oracle中,默认表空间是用户在创建时不特别指定表空间位置的存储位置,可以利用ALTER命令修改表空间,语法为“ALTER DATABASE DEFAULT TABLESPACE users;”。

本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。

oracle默认表空间是什么

在oracle9i中,如果未用 DEFAULT TABLESPACE 子句创建的所有用户将以SYSTEM表空间作为它们的默认表空间。同时也不能为数据库指定一个默认的表空间。

在Oracle 10g中定义了数据库级别的默认表空间USERS,在创建用户时没有定义默认表空间,就会把数据库级别的默认表空间当作自己的默认表空间。

在10g以前,是把系统表空间(SYSTEMS)当作默认表空间。这样很不合理。

可以使用如下命令查看默认表空间:

/* Formatted on 2011/12/19 15:57:48(QP5 v5.185.11230.41888) */  
SELECT PROPERTY_VALUE  
  FROM database_properties  
 WHERE PROPERTY_NAME = 'DEFAULT_PERMANENT_TABLESPACE'

可以使用如下命令修改默认表空间:

ALTER DATABASE DEFAULT TABLESPACE users;

这里有几个注意事项:

1. 如果我们在创建用户时指定了默认表空间,那么在修改默认表空间后,之前用户的默认表空间也会发生改变。

2. 如果我们在创建用户时没有指定用户表空间,那么默认也会使用DB的默认表空间,这时候如果我们修改了DB的默认表空间,用户的表空间也会发生改变。

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

4. DB的默认表空间不能删除,除非将默认表空间指向其他表空间之后才可以删除。

5. 如果用户的默认表空间指向其他的表空间,当这个表空间被drop 之后,用户的默认表空间会自动指向DB的默认表空间。

推荐教程:《Oracle视频教程》

以上就是oracle默认表空间是什么的详细内容,转载自php中文网

点赞(700) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部