数据库实验-数据库索引、视图与触发器.doc

数据库实验-数据库索引、视图与触发器.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库实验-数据库索引、视图与触发器

石家庄经济学院 实 验 报 告 学 院: 信息工程学院 专 业: 网络工程 信息工程学院计算机实验中心制 学号 411109030110 姓名 马立杰 实验日期 2014-4-28 实验室 260实验室 指导教师 张有华 设备编号 22 实验内容 实验4 数据库索引、视图与触发器 一 实验题目 1.索引的建立和删除操作 2.视图的创建、修改、更新和查询操作 二 实验目的 1.掌握数据库索引建立与删除操作,掌握数据库索引的分类,并了解建立数据库索引的意义、作用。 2.掌握视图的创建和查询操作,理解视图的使用,理解实图在数据库安全性中的作用。 三 实验内容 索引的建立和删除操作 在S表中,建立按照sno升序的惟一性索引snoIDX。 在SC表中,建立按照学号升序和课程号降序的唯一性索引scIDX。 在S表中,按照生日建立一个非聚簇索引birthdayIDX。 在C表中,建立一个按照课程名升序的聚簇索引cnameIDX。 删除索引cnameIDX。 视图的创建、修改、更新和查询操作 建立一个关于所有女生信息的视图S_GIRL。 将各系学生人数,平均年龄定义为视图V_NUM_AVG 建立一个视图反映学生所选课程的总学分情况TOTAL_CREDIT。 建立一个所有学生课程成绩的视图S_GRADE,包括基本学生信息,课程信息和成绩。 在视图S_GRADE基础之上,建立一个两门课以上成绩不及格的学生情况视图FAIL_GRADE。 建立一个至少选修了4门课及4门课以上的学生信息的视图SC_FOUR。 修改视图S_GIRL,要求只显示1997年以前出生的女生信息。 在视图FAIL_GRADE查询不及格超过2门课的学生信息。 删除视图S_GRADE。 通过视图S_GIRL,将“王丹”的名字修改为“汪丹”,并查询结果。 通过视图S_GIRL,新增一个学生信息(“刘兰兰”,“女”,“计算机学院”,1996-8-8),并查询结果。 通过视图S_GIRL,删除1995年出生的女生信息,并查询结果。 通过视图S_GRADE,将“汪丹”的名字修改为“王丹”,是否可以实现,请说明原因。 通过视图COMPUTE_AVG_GRADE,将“4121090301”学生的平均分改为90分,是否可以实现,请说明原因。 四 实验要求 1. 要求掌握索引的类型,以及创建索引时的注意事项,例如每个表只能创建一个聚集索引,可以创建非聚集索引最多为249个,等等。 2. 理解创建视图的目的和意义。掌握创建视图时需要考虑的原则:只能在当前数据库中创建视图、视图名不得与该用户的表名相同、可在视图上建立视图、定义视图不能包括ORDER BY等关键字、不能建立临时视图,等等。 3. 报告中由同学写明具体的操作意图(文字描述)、操作命令(SQL语句)、和执行结果(文字描述+适当截图)。 4. 对于重要的运行界面和结果窗口,可以用Alt+PrintScreen来截取当前窗口,并粘贴到实验报告中。 五 实验步骤 索引的建立和删除操作 在STU表中,建立按照sno升序的惟一性索引snoIDX。 SQL语句为:create unique index snoIDX on STU(Sno); 运行结果如图1- 1 图1- 1按学号升序建立索引 create unique index scIDX on SC(Sno ASC,Cno DESC); 运行结果如图1- 2 图1- 2按学号升序课程号降序建立索引 create nonclustered index birthdayIDX on STU(Sbirthday); 执行结果如图1- 3 图1- 3对生日建立非聚簇索引 create clustered index cnameIDX on Course(Cname); 运行结果如图1- 4 图1- 4按课程名升序建立聚簇索引 drop index Course.cnameIDX; 运行结果如图1- 5图1- 5删除cnameIDX索引 create view STU_GIRL(Sno,SID,Sname,Ssex,Sbirthday,Sdept,Saddress,Smajor) as select * from STU where Ssex=女 运行结果如图1- 6 图1- 6建立女生信息的视图 create view V_NUM_AVG(Sdept,STU_count,A_avg) as select Sdept,count(Sdept),avg(datediff(year,Sbirthday,getdate())) from STU group by Sdept 执行结果如图1- 7 图1- 7建立视图V_NUM_AVG create view

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档