西北工业大学数据库实验报告3_第1页
西北工业大学数据库实验报告3_第2页
西北工业大学数据库实验报告3_第3页
西北工业大学数据库实验报告3_第4页
西北工业大学数据库实验报告3_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理实验报告题目:实验三:数据完整性与安全性控制学号姓名班级日期2014302692孟玉军10011402一. 实验内容、步骤以及结果1 利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。(18分,每小题3分) (1) 非空约束:为出生日期添加非空约束。 (2) 主键约束:将学号(sno)设置为主键,主键名为pk_sno。 (3) 唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname。 (4) 缺省约束:为性别(ssex)添加默认值,其值为“男”。 (5) CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为c

2、k_grade,其检查条件为:成绩应该在0-100之间。 (6) 外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表和C表,外键名称分别为fk_sno,fk_cno。 2 在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建第1题中的(2)-(6)小题.(15分,每小题3分,提示:alter table add constraint)(2) alter table Sadd constraint pk_sno primary key(sno)(3)alter table Sadd constraint uk_sname unique(sname

3、)(4)alter table Sadd constraint uk_sex default('男') for ssex(5)alter table SCadd constraint ck_grade check(grade between 0 and 100)(6)alter table SCadd constraint fk_sno foreign key(sno) references S(sno)alter table SCadd constraint fk_cno foreign key(cno) references C(cno)3 利用图形用户界面根据上述SC表中

4、的外键定义画出由S,C,SC表构成的数据库关系图。(5分,提示:选中student -> 数据关系图) 4 用SQL语言删除S表中所创建的缺省约束和外键约束。(6分,每小题3分) alter table Sdrop constraint uk_snamealter table SC drop constraint fk_sno5 在图形用户界面中创建新登录名以及用户。(16分)(1) 根据第五版教材第四章 第7题,创建数据库company和其中的基本表,并创建该题中所需要用到的各个用户以及相关的登录名。(10分)(2) 用图形用户界面完成以下的权限赋予:(每小题3分)a) 用户王明对两个

5、表均有Select和Insert的权力。 b) 用户李勇对职工表具有Select权力,对工资字段具有更新权力。6 用SQL语句授权和收回权限并对权限加以验证。(40分,每题20分)(1) 根据第五版教材第四章 第7题。 1).grant select on employee,departmentTO 王明2). grant insert ,delete on employee to 李勇grant insert ,delete on departmentto 李勇3).先创建视图;create view view_ias select * from employeewhere ename=CU

6、RRENT_USER再进行授权:grant select on view_ito public4). grant select,update(salary) on employee to 刘星5). grant alter on employeeto 张新grant alteron departmentto 张新6).grant all privileges on departmentto 周平 with grant option grant all privileges on employee to 周平 with grant option7).创建部门工资视图;create view de

7、partment_salary(department_dname,max_salary,min_salary,avg_salary)asselect dname,max(salary),min(salary),avg(salary)from department,employeewhere department.dno=employee.dno group by department.dno,dname授权:grant select on department_salaryto 杨兰(2) 根据第五版教材第四章 第8题。(提示:(c)和(g)小题可创建合适的视图,针对视图进行授权,(c)小题用

8、CURRENT_USER)1).revoke select on department from 王明revoke select on employee from 王明2).revoke select ,delete on employee from 李勇 revoke select ,delete on department from 李勇3).revoke select on view_ifrom public4).revoke select ,update(salary)on employee from 刘星5).revoke alter on department from 张新rev

9、oke alter on employee from 张新6).revoke select,insert,delete,alter on employeefrom 周平 cascaderevoke select,insert,delete,alter on departmentfrom 周平 cascade7).revoke selecton department_salaryfrom 杨兰l 选做实验1 利用SQL语言创建,验证和删除规则。(1) 创建一个ssex_rule规则(create rule),将其绑定(sp_bindrule)到S表的ssex性别字段上(请验证该规则生效,保证了输

10、入的性别只能是“男”或者“女”)。 :创建 create rule ssex_ruleas ssex in ('男','女') :绑定 exec sp_bindrule 'ssex_rule','S.ssex' :验证 (2) 删除ssex_rule规则(注意:规则已绑定到ssex表的性别字段上,需要先解除原有的绑定sp_unbindrule, drop rule)。 exec sp_unbindrule 'S.ssex'drop rule ssex_rule2 利用SQL语言创建,验证和删除默认值。(1) 创建一个ssex_def默认对象(create default),将其绑定(sp_bindefault)到S表的ssex性别字段上,使其默认值为“男”(请验证该默认值生效)。 :创建 create default ssex_def as '男' : 绑定exec sp_bindefault 'ssex_def','S.ssex' : 验证 (2) 删除ssex_def(注意:默认对象已绑定到S表的ssex性别字段上,需要先解除原有的绑定sp_unbindefault, drop default)。exec sp_unbindef

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论