Oracle新建用户、角色,授权,建表空间的sql语句(2)

来源:asp之家 时间:2012-07-11 15:39:24 




三 、3种标准角色

  qracle为了兼容以前的版本,提供了三种标准的角色(role):connect、resource和dba。

  1. connect role(连接角色)

  临时用户,特别是那些不需要建表的用户,通常只赋予他们connectrole。connect是使用oracle的简单权限,这种权限只有在对其他用户的表有访问权时,包括select、insert、update和delete等,才会变得有意义。拥有connect role的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym )、会话(session)和与其他数据库的链(link)。

  2. resource role(资源角色)

  更可靠和正式的数据库用户可以授予resource role。resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。

  3. dba role(数据库管理员角色)

  dba role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。system由dba用户拥有。下面介绍一些dba经常使用的典型权限。

  (1)grant(授权)命令

  下面对刚才创建的用户user01授权,命令如下:

  grant connect, resource to user01;

  (2)revoke(撤消)权限

  已授予的权限可以撤消。例如撤消(1)中的授权,命令如下:

代码如下:


  revoke connect, resource from user01;


  一个具有dba角色的用户可以撤消任何别的用户甚至别的dba的connect、resource 和dba的其他权限。当然,这样是很危险的,因此,除非真正需要,dba权限不应随便授予那些不是很重要的一般用户。 撤消一个用户的所有权限,并不意味着从oracle中删除了这个用户, 也不会破坏用户创建的任何表;只是简单禁止其对这些表的访问。其他要访问这些表的用户可以象以前那样地访问这些表。

四、创建角色

  除了前面讲到的三种系统角色----connect、resource和dba,用户还可以在oracle创建自己的role。用户创建的role可以由表或系统权限或两者的组合构成。为了创建role,用户必须具有create role系统权限。下面给出一个create role命令的实例:

代码如下:


  create role student;


  这条命令创建了一个名为student的role。

  一旦创建了一个role,用户就可以给他授权。给role授权的grant命令的语法与对对用户的语法相同。在给role授权时,在grant命令的to子句中要使用role的名称,如下所示:

代码如下:


  grant select on class to student;


  现在,拥有student 角色的所有用户都具有对class 表的select权限。

五、删除角色

  要删除角色,可以使用drop role命令,如下所示: 

代码如下:


  drop role student;


  指定的role连同与之相关的权限将从数据库中全部删除。

六、删除表的注意事项

在删除一个表中的全部数据时,须使用

Sql代码

代码如下:


truncate table 表名


因为用drop table,delete * from 表名时,tablespace表空间该表的占用空间并未释放,反复几次drop,delete操作后,该tablespace上百兆的空间就被耗光了。
作者“技术总结”

标签:新建用户,角色,授权,建表空间
0
投稿

猜你喜欢

  • 通过屏蔽IP来防止采集

    2007-08-19 15:28:00
  • 小议javascript设计模式

    2009-10-09 13:31:00
  • ASP分页类(支持多风格变换)

    2011-04-08 10:39:00
  • Ewebeditor及fckeditork单引号的问题

    2010-04-05 21:12:00
  • JS复制特定内容到粘贴板

    2011-04-02 11:09:00
  • 使用线框图来简化你的产品设计流程

    2011-06-10 13:10:00
  • ASP四级连动下拉列表程序段

    2009-07-03 15:33:00
  • 解决MySQL数据库中与优化器有关的问题

    2008-12-17 16:18:00
  • CSS高级文字排版的实例

    2009-03-24 20:56:00
  • 在JavaScript中,为什么要尽可能使用局部变量?

    2009-03-01 12:38:00
  • asp中怎么输出双引号?

    2008-01-31 13:30:00
  • MySQL数据库优化经验详谈

    2009-12-15 10:34:00
  • Sql Server 2000 一些安全设置

    2008-02-13 18:57:00
  • ASP Application 对象用户手册

    2008-10-23 13:59:00
  • 细化解析:转换 SQL数据库时的疑难问题

    2009-02-05 15:38:00
  • [翻译]标记语言和样式手册 Chapter 10 应用CSS

    2008-02-02 18:44:00
  • 白话Block Formatting Context

    2010-08-03 12:36:00
  • ajax返回中文乱码问题解决

    2009-04-13 16:07:00
  • SQL Server 1069错误(由于登录失败而无法启动服务)解决方法

    2008-09-12 17:35:00
  • IE6浮出层穿透解决方案中的iframe高度自适应

    2009-10-30 18:08:00
  • asp之家 网络编程 m.aspxhome.com