数据库原理实验实验四 oracle的安全性和完整性控制

本次实验旨在熟练掌握Oracle数据库的用户权限管理、实体完整性和参照完整性。实验内容包括创建用户、授予不同级别的权限,如查询、修改数据权限,并涉及角色的创建与权限分配。同时,实验还涉及完整性约束,如唯一性、主键和检查约束的设置与修改,以及违反完整性约束的案例演示。
摘要由CSDN通过智能技术生成

实验四 oracle的安全性和完整性控制

实验目的:

1.  通过本实验能够熟练应用sql语言进行用户权限的授予和回收。

2.  熟练掌握实体完整性,参照完整性及用户定义的完整性的定义。

3.  并体会oracle数据库系统在安全性和完整性保护方面的特性。

实验要求:

1. 在进行本实验之前,应熟练课程内容,在上机之前做好实验计划,编写好相应的代码。

实验内容:

Grant 语句的格式:

Grant <权限> [,<权限>]…

On <对象名>

To <用户> [,<用户>]…

[with grant option]

 

Public 全体用户

如果指定了[with grant option],则获得某种权限的用户还可以把这种权限再授予其他用户。但不允许循环授权。

(一)       授权

1.   以dba用户的身份登陆oracle,创建用户u1+学号后四位,u2+学号后四位。

 

createuser u1_4128 IDENTIFIEDBY j123456;

createuser u2_4128 IDENTIFIEDBY j123456;

 

 

2.   对1.中创建的用户授予connect,resource的权限。

 

SQL> grant connect to u1_4128,u2_4128;

 

Grantsucceeded

 

SQL> grant resource to u1_4128,u2_4128;

 

Grantsucceeded

或者

SQL> grant connect,resource to u1_4128,u2_4128;

 

Grantsucceeded

3.   用户jsj***把查询Student表权限授给用户u1+学号后四位,u1执行相应的查询。

 

SQL> grant select on student to u1_4128;

 

Grantsucceeded

 

1)  查询jsj***用户的全体学生的详细记录。

登录u1_4128用户后

SQL> select * from j2014224128.student;

 

      SNO SNAME    SSEX SAGE SDEPT

--------- -------- ---- ---- --------------------

 20070001 李佳          20 MA

 20070003 王添          18 MA

 20070004 张力          21 IS

 20070005 张力          19 CS

 20070006 张力          19 MA

   224128 庞振男        20 IT

   224129 庞阿男        22 MA

     1254 nana               lal

 

8 rows selected

 

2)  查询jsj***用户的所有姓刘的学生的姓名、学号和性别。(张)

 

SQL> select sname,sno,ssex from j2014224128.student where sname like '%';

 

SNAME          SNO SSEX

-------- --------- ----

张力      20070004

张力      20070005

张力      20070006

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值