对象和角色

一.撤销对象权限

1.格式

revoke object_privilege on object_name from username;

2.实践

例如:将xiaoming用户查看system.books数据表的权限收回。

disconnect;

connect system/123456;

revoke select on books from xiaoming;

disconnect;

connect xiaoming/123456;

select*from system.books;

二.列对象上的权限

1.任务场景在比如淘宝商品界面,我们在使用过程中会发现某些商品属性不仅乐意查看还可以修改。列对象上的权限就可以实现对象上部分列的操作。insert、update、references这几种的列对象上的权限是可以实现的。

2.格式

grant object_privilege(column_name……) on object_name to user_name;

3.实践

例如:给xiaoming授books数据表上的bookprice数据值修改权限。

测试:

disconnect

connect xiaoming/123456

update system.books

set book_price=25

where book_name='基础化学';

通过测试小明没有books数据表列对象上的操作权限。

第一给xiaoming授修改bookprice列数据的修改权限。

disconnect

connect system/123456

grant update(book_price) on books to xiaoming;

测试:

disconnect

connect xiaoming/123456

update system.books

set book_=25;

where book_name='基础化学';

disconnect

connect system/123456

select book_name,book_price

from book;

三.角色

1.任务场景在软件的授权过程中,我们发现权限种类和用户数量都非常多。我们如何让授权任务量变少,这个时候需要使用角色。

2.角色:为了方便对用户权限的管理,数据库允许一组相关的授权给角色,然后把角色在授权给用户。

3.格式

create role

4.实践

例如:创建teacher、student角色。

disconnect

connect system/123456

create role teacher;

create role student;

四.角色授权

1.格式

grant privilege [on object] to role

2.实践

例如:尝试给角色授权,然后再将角色分配给用户。

第一步创建四个新用户

create user aa identified by 123456;

create user bb identified by 123456;

create user cc identified by 123456;

create user dd identified by 123456;

第二步给teacher角色授权查看system.presses权限。

grant select on books to teacher;

grant select on presses to student;

第三步将teacher,student角色分配给四个用户。

grant teacher,create session to aa;

grant teacher,create session to bb;

grant student,create session to cc;

grant student,create session to dd;

第四步测试授权是否成功

disconnect

connect aa/123456

select*from system.books;

select*from system.presses;

disconnect

connect bb/123456

select*from system.books;

select*from system.presses;

disconnect

connect cc/123456

select*from system.books;

select*from system.presses;

disconnect

connect dd/123456

select*from system.books;

select*from system.presses;

五.删除角色

1.格式

drop role role——name

2.实践

例如:尝试删除teacher、student。

disconnect

connect system/123456

drop role teacher;

drop role student;

六.表空间

1.定义:表空间是数据库中最大的逻辑存储结构,数据中所有的数据、对象都会放到表空间

2.格式

create tablespace tablespace_name

datafile '文件存放路径,文件名'

size

autoextend [on|off] next k|m

maxsize k|m

3.实践

例如:创建一个名为myspace表空间,数据文件存放在E:\class\oracle(提前创建)初始文件大小20m,自动增长每次自增5m,最大100m。

create tablespace myspace

datafile 'E:\class\oracle\datafile\myspace.dbf'

size 20m

autoextend on next 5m

maxsize 100m;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值