oracle002:给用户创建表,及增删改查的授权

一,授权创建表:
1, 创建用户
在sys超级角色管理员下创建一个用户:

create user zll identified by zll;

创建完了之后可以拿这个账号密码登陆
在这里插入图片描述
然后发现输入账号密码登陆不上。这是因为还没有给用户授权让它登陆。

 grant create session to zll;

2,创建表
授权之后发现可以登陆进去,发现建表又是权限不足
在这里插入图片描述
再给她授权

 grant create table to zll;

在这里插入图片描述
我特么???

grant unlimited tablespace to zll;

在这里插入图片描述

  1. 系统权限unlimited tablespace是隐含在dba, resource角色中的一个系统权限. 当用户得到dba或resource的角色时, unlimited tablespace系统权限也隐式受权给用户.
  2. 系统权限unlimited tablespace不能被授予role, 可以被授予用户.
  3. 系统权限unlimited tablespace不会随着resource, dba被授予role而授予给用户.

这样表就创建完了,
3,给表增删查改的权利
1,添加数据的权利:

grant select on zll.users to zll;//指名道姓,哪个用户下的哪个表

添加完了要么commit提交,要么rollback退到回滚区。
我们commit提交,可以在sys用户下查看它添加的数据,但是users不行,因为还没有授权。
在这里插入图片描述

2,删除数据的权利:

 grant delete on zll.users to zll;

在这里插入图片描述
3,修改数据的权利:

 grant update(b) on zll.users to zll;//只给users修改b的权利,可以
 //给全部修改的权利,也可以给修改一部分的权利。

在这里插入图片描述
但为啥它这没有起作用?应该a是改不了的,只能改b,???
4,给查的权利

grant insert on zll.users to zll;

二,有时候这样一步一步授权太麻烦了,我们想用简单的授权方式
1,创建一个自定义角色

create role man;

2,给自定义角色man创建会话(登陆)的权利:

grant create session to man;

3,把对zll.users的所有权给了自定义角色man。

grant all on zll.users to man;

4,创建fff对象

 create user fff identified by fff;

5,把自定义角色付给fff,fff就可以登陆并且可以有对zll的所有权利,就是zll有啥,fff就也有啥。

grant man to fff;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值