我爱编程

Oracle数据开发之SQL(1)------“查看以及修改用户

2015-12-14  本文已影响1080人  HQ今日磨墨

这篇文章讲得主要是关于如何通过SQL Plus 查看登陆用户的表空间,下面三个是这篇文章的三个方面:


1. dba_tablespace, user_tablespace

1.1 通过管理者(system账号)来访问用户表空间

打开SQL Plus,会挑出输入用户名的提示,输入:system, 然后输入你自己设置的口令,就可以登录了。

登录界面

  接下来,我们应该如何查看管理员用户下所拥有的表空间类型呢?不要急,在SQL>  下输入如下语句:

SQL> select tabllespace_name from dba_tablespaces;

其中的dba意思是指在数据字典中进行查找。应用会返回给你6个表空间:

显示的表空间类型

简要介绍一下这六个表空间的职能范围:


1.2 通过普通用户访问用户的表空间

上面我使用了system管理员用户登录查看了用户表空间,我们现在来尝试通过普通用户来查看用户表空间。(使用scott用户来登录查看)
  首先需要转换用户:

SQL> connect scott/口令

转换登录用户之后,我们不能通过dba数据库来进行用户表格控件的查找。即下面的这条语句是会报错的:

scott用户无法通过dba数据库进行访问查找,因为权限不够

SQL> select tablespace_name from user_tablespaces;

这条语句通过查找user的数据库则能得到想要的表格空间。这说明了不同的登录用户有着不同的使用权限!


2. dba_users, user_users;

在scott用户下访问 dba_users是会报错的。


因为权限的问题,必须切换登录用户为SYSTEM.(connect system/口令)
然后重复 dba_users,则可以得到system用户的一些信息。如图所示:

现在来查看一下它的默认表空间和临时表空间是什么(分别是用户创建对象后默认存放的地点和临时信息存放的空间地点,并且默认只有一个临时表格空间),语句如下:

SQL> select default_tablespace, temporary_tablespace from dba_users where username='SYSTEM';

特别要注意,SYSTEM必须要大写!

3. 修改默认表格空间

得到了默认表格空间是“SYSTEM”,临时表格空间是“TEMP”。接下来学会操作如何修改默认表空间(因为临时表空间只有一个,所以不做修改)。
修改格式是这样的:

ALTER USER username
DEFAULT|TEMPORARY
TABLESPACE tablespace_name

其实是可以不区分大小写的。

验证:

说明用户的默认表格空间已经从SYSTEM改为了USERS。改变默认表格空间成功。同时应该知道,普通用户是没有权限修改默认表格空间的。

上一篇下一篇

猜你喜欢

热点阅读