oracle取消用户函数权限,Oracle——16用户、角色和权限

一、用户

1、利用SQL创建用户的语法格式如下:

create user user_name --用户名*/

[identified by password | externally | globally as 'external_name'] --以何种方式验证用户,验证方式有3种:口令、外部和全局,

--口令表示利用创建用户时提供的password进行验证,外部表示利用第三方程序来验证,如操作系统的登录密码,全局则指当有多个数据时,

--建立一个全局的用户,其他数据库都以这个用户来验证,只有使用口令的时候才需要关键字by*/

[default tablespace tablespace_name] --指定用户的默认表空间*/

[temporary tablespace tablespace_name] --指定用户的临时表空间*/

[quota integer K | integer M | unlimited on tablespace_name] --在指定表空间能分配的最大空间*/

[profile profile_name] --指定概要文件*/

[default role roleName,..n | all[except roleName,...n] | none] --指定用户拥有的角色,default是将一个或多个默认的

--角色分给用户,all[except role]是把所有的角色或除某些角色以外的角色分给用户,none表示不指定角色*/

[password expire] --表示使password失效,这将强制用户在第一次登录数据库时更换密码*/

[account lock | unlock] --账户是否锁定*/

示例代码:

create user hello identified by world password expire;

2、利用SQL修改用户的语法格式如下:

alter user user_name

identified by password | externally | globally as 'external_name'

[default tablespace tablespace_name]

[temporary tablespace tablespace_name]

[quota integer K | integer M | unlimited on tablespace_name]

[profile profile_name]

[default role roleName | all[except roleName] | none]

[password expire]

[account lock | unlock]

示例代码:

alter user hello identified by helloworld;

3、利用SQL命令删除用户的语法格式如下:

drop user user_name [cascade]; --使用cascade会把用户拥有的对象一起删除*/

示例代码:

drop user hello cascade;

二、角色

1、利用SQL语句创建角色的语法格式如下:

create role role_name

[not identified]

[identified by password | externally | globally]

示例代码:

create role hello;

2、利用SQL语句修改角色的语法格式如下:

alter role role_name

[not identified]

[identified by password | externally | globally]

3、利用SQL语句删除角色的语法格式如下:

drop role role_name

三、权限

权限既可以授予单独的用户,也可以授予给角色。

1、使用grant进行授权

语法格式如下:

grant system_privilege | role_name to user_name | role_name [with admin option]; --把系统权限或某个角色授予某一用户或角色*/

说明:with admin option表示被授予权限的用户有权限把该权限授予其他用户或角色。

示例代码:

grant connect to hello;

对某些对象也可以单独授予权限,如表、视图等,语法格式如下:

grant system_privilege on object to user_name | role_name; --对某个对象授予权限*/

示例代码:

grant select on table_name to hello; --授予用户hello对表table_name的select权限*/

2、使用revoke进行权限的移除

语法格式如下:

revoke system_privilege | role_name from user_name | role_name; --把系统权限或某个角色从某一用户或角色的权限列表中移除*/

示例代码:

revoke connect from hello;

对某些对象单独授予的权限,也可以使用revoke进行移除,语法格式如下:

revoke system_privilege on object from user_name | role_name; --把某一对象的系统权限授予某一用户或角色*/

示例代码:

revoke select on table_name from hello; --移除用户hello对表table_name的select权限*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值