数据库原理实验实验四 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

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、实验目的 使学生加深对数据库安全性完整性的理解。并掌握SQL Server中有关用户、角色及操作权限的管理方法。熟悉通过SQL语句对数据进行完整性控制。 二、实验内容和要求   数据库安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色管理,设置和管理数据操作权限。   具体内容如下:   设置SQL Server的安全认证模式(Windows或SQL Server和Windows(S)认证模式)。   登录的管理 创建一个登录用户   数据库用户的管理 登陆用户只有成为数据库用户(Database User)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server的数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。   角色的管理 创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。   在学生表中定义主键、外键约束。   在课程表的“课程名”字段上定义唯一约束。   在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100.“课程号”字段只能输入数字字符。   定义规则,并绑定到读者表的“性别”字段,使之只能取“男、女”值。   在学生表中增加出生日期字段。定义缺省,并绑定到借阅表的“借阅日期”上,使之只能取当前日期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值