版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、华北科技学院计算机系综合性实验报告华北科技学院计算机学院综合性实验实 验 报 告 课程名称 网络数据库 实验学期 2014 至 2015 学年 第 1 学期学生所在系部 基础部 年级 2012级 专业班级 计算B121 学生姓名 樊灿 学号 201209014130 任课教师 郭红 实验成绩 计算机学院制 网络数据库课程综合性实验报告 开课实验室: 基础五 2014 年 12 月 14 日实验题目图书借阅系统数据库设计一、实验目的通过该实验把数据库的理论知识(数据库和数据表的设计理论、数据完整性的实现、存储过程、触发器、数据库备份、数据库安全等)应用到具体的综合实例中,达到数据库知识整合的目的
2、。二、设备与环境硬件:多媒体计算机软件:Windows7以上的操作系统、SQL Server 2008版本三、实验内容及要求1.数据库设计要求数据库设计要合理,对数据库设计作必要的说明并抓图。2数据表设计要求数据表设计要合理,要符合数据库设计的理论范式,对数据表设计作必要的说明并抓图。3视图设计要求根据系统需求作必要的视图设计,如在一次查询中涉及到多个表,应该创建视图。4索引设计要求根据系统需求作必要的索引设计,本系统需要的聚集索引、非聚集索引、唯一索引、全文索引等。5数据完整性设计根据系统需求作必要的数据完整性设计,本系统需要的实体完整性体现、域完整性体现、参照完整性体现等。6存储过程和触发
3、器设计根据系统需求作必要的存储过程和触发器设计,本系统需要的存储过程和触发器设计。必要的存储过程和触发器设计都要写全说明,图可以是一个表的完整存储过程或触发器。7备份与恢复设计根据系统需求作必要的备份策略。8数据库安全设计根据系统需求作必要的数据库安全设计,如本系统分几级用户、分别是什么角色成员具有什么操作权限等。四、实验结果及分析1.数据库设计(1)设计思想: 图书管理系统数据库的主要任务是对读者信息、管理员信息、图书资料信息、借阅归还图书信息、罚款信息的基本信息的操作和处理。此系统功能分为面向读者和面向管理员两部分,其中读者可以进行借阅、续借、归还和查询书籍等操作。根据以上功能分析,图书管
4、理系统应该包含:读者信息表、图书信息表、以及借阅信息表。针对图书管理系统目前的用户量(假设为15000人)和图书量(假设为10万册)考虑,系统的主数据文件初始大小设置为5MB,最大容量不限制,自动增长设置为10%;日志文件初始大小设置为:5MB,最大容量为10MB自动增长设置为:1MB。考虑到图书管理系统最经常的操作是查找,所以为了提高查找效率,应为读者表130、图书表130建立索引。(2)具体实现代码: 2数据表设计(1)设计思想:根据以上对图书管理系统的功能分析,需要设计读者信息表(简称读者表130)、管理员信息表(简称管理员表)、图书信息表(简称图书表130)和借阅信息表(简称借阅表13
5、0)。(1)读者表130(学号,姓名,性别,年龄,系部,专业,借阅数量,欠款金额,联系电话)读者表130主要记录读者信息,通过读者表130可以查看读者的具体信息,如:学号、姓名、性别、年龄、系部,专业、借阅数量、欠款、联系电话等。(2)图书表130(ISBN,书名,作者,出版社,单价,库存量,馆藏位置,类型)图书表130主要记录图书的各种信息,包括:ISBN、书名、条码号、作者、出版社、单价、库存量、馆藏位置、类型等。读者可以通过查询此表得到与需要的图书相关的信息。例如:可以通过查询图书的ISBN,查看该图书目前的库存量和馆藏位置。(3)借阅表130(学号,ISBN,条码号,借阅日期,应还日期
6、,实还日期,欠款金额)读者可以通过借阅表130查询借书情况,例如:借阅日期、应还日期、欠款金额等信息。(2)具体实现:3视图设计(1)设计思想:(1)为了查询读者借阅情况是方便,建立读者借阅情况视图。其字段信息包括:学号、姓名、ISBN、书名、借阅日期、应还日期、欠款金额。(2)管理员需要查看当前逾期未还的图书,需要建立逾期未还图书信息视图,其字段信息包括:学号、姓名、系部、专业、书名、借阅日期、应还日期、欠款金额。其中,欠款金额通过计算得出。(2)具体实现:4索引的建立(1)设计思想:为了提高搜索效率,应该为表建立相关索引。(1)对读者表130建立索引在建立读者表130时,已经对读者表130
7、的 “学号”字段建立了主键索引,且其为聚集索引,为了提高对读者表130的检索效率,还需要为经常查询的字段添加非聚集索引,例如为“姓名”字段建立非聚集索引。(2)对图书表130建立索引在建立图书表130时,已经对图书表130的“ISBN”字段建立了主键索引,且其为聚集索引,为了提高对读者表130的检索效率,还需要为经常查询的字段添加非聚集索引,例如为“书名”字段建立非聚集索引。(2)具体实现:(1)为读者表130建立“姓名”字段的非聚集索引 (2)为图书表130建立“书名”字段的非聚集索引5数据完整性设计(1)设计思想:图书借阅系统包括:读者表130、图书表130和借阅表130。下面分别就实体完
8、整性、域完整性、参照完整性分析设计数据库的完整性。(1)实体完整性读者表130定义“学号”为主键实现实体完整性;图书表130定义“ISBN”字段为主键来实现图书表130的实体完整性;借阅表130定义“学号”、“ISBN”和“借阅日期”为主键实现实体完整性。(2)域完整性 设定读者表130“姓名”字段不为空,实现读者表130域完整性;设定图书表130 “书名”字段不为空,实现图书表130域完整性;设定借阅表130“应还日期”字段不为空,实现借阅表130域完整性。(3)参照完整性 对读者表130、借阅表130和图书表130建立表关系。其中读者表130与借阅表130通过“学号”关联,借阅表130“学
9、号”字段参照读者表130“学号”字段,“学号”是读者表130的外键;图书表130与借阅表130通过“ISBN”关联,借阅表130的“ISBN”字段参照图书表130“ISBN”字段,“ISBN”是图书表130的外键。(2)具体实现:6存储过程和触发器设计(1)设计思想:(1)存储过程设计读者需要查询自己的借阅情况,需要建立根据学号查询该读者的借阅情况;读者需要检索图书信息,需要建立根据图书名查询图书信息。(2)触发器设计 读者借书时,触发借阅表130插入记录的触发器,执行操作包括:填补借阅表130“应还日期”字段信息,即将“应还日期”设置为“借阅日期”开始计算的后2个月的时间;设置读者表130“
10、借阅数量”字段增加1;设置图书表130的“库存量”减去1。读者还书时,设置读者表130“借阅数量”减1,;设置该图书“库存量”加1;判断读者“实还日期”与“应还日期”关系,如果“实还日期”超出了“应还日期”,计算欠款金额,更新到该条借阅记录的“欠款金额”字段,并将欠款金额累加到读者表130该读者的“欠款金额”字段。(2)具体实现:(1) 存储过程的实现 根据学号查询该读者的借阅情况的存储过程实现代码:根据书名查询图书信息的实现代码:(2) 触发器的实现 借阅表130插入记录的触发器实现代码:借阅表130“实还日期”字段的触发器实现代码:7备份与恢复设计(1)设计思想:本系统需要对读者表130、
11、管理员表、图书表130和借阅表130进行备份,以免因意外造成数据库丢失。因为图书借阅系统数据库数据量很大以及数据库更新频繁,所以可以考虑采取差异备份的方式。备份每天执行一次,备份工作由系统管理员来执行。8数据库安全设计(1)设计思想:根据图书馆里系统的使用人员,将本系统分成系统管理员、表管理员、用户三个级别。系统管理员拥有最高权限,可以对数据库所有表进行增加、修改、删除、查询等数据库操作。表管理员具有数据库表的管理权限,可以对表进行添加、删除和查询记录操作。用户界别只有查询图书信息和借阅信息的权限。(2)具体实现:以系统管理员身份登录数据库,打开“安全性登录名”的“登录属性”窗口为数据库添加系
12、统管理员权限,为该登录名赋予系统管理员(sysadmin)角色,其中public角色为系统默认角色。对借书管理员的授权实现代码:对还书管理员的授权实现代码:对学生用户的授权实现代码:五、体会 此次实验对图书借阅系统的数据库设计、数据表设计、视图设计、数据完整性设计、存储过程与触发器设计、数据备份与恢复设计以及数据库安全性设计,使我对SQL server数据库有了更深入的了解。 通过本次试验,我学会了建立数据库系统从分析、设计到物理实验一系列过程中的各种步骤:先思考自己做的这个系统要达到一个什么样的效果,为人们解决什么问题。进而根据分析结果考虑要为系统设置一些什么功能,然后由这些功能来确定需要支持实现这些功能的各个表,每个表存储哪些内容,表之间又有哪些联系,这些初步的准备工作和系统构造完成后就可以开始进入编写代码阶段了,代码编写过程中要不断地根据具体情况及时对自己的代码功能进行改进和完善。与此同时,数据库系统设计过程中难免会遇到各种各样的困难,通过与同学不断的探讨,让我能够综合更加灵活熟练的将所学的关系数据库原理知识运用到实际的设计系统中来。只有这样,在实际操作过程中不被困难所打倒,在平时的积累和锻炼下最终熟练掌握数据库知识,才可以在计算机这个领域走得更远。 另外,这个实验使我收获最大的是,无论遇到什么问
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 兰州玉米购销合同范本
- 劳务派遣进厂合同范本
- 共享医疗资源的协议书
- 合伙修建房屋合同范本
- 占地迁坟赔偿合同范本
- 合伙人合同收益协议书
- 厂区无偿租赁合同范本
- 合同增减项目补充协议
- 代建车库租赁合同范本
- 2026年一级注册建筑师之建筑经济、施工与设计业务管理考试题库300道有完整答案
- 局麻药过敏反应课件
- 邮件流量分析-洞察及研究
- 《流体机械》课件第5章叶片式气体机械
- 基于微信小程序自助洗车系统的设计与实现
- 医院骨科主任竞聘课件
- 心源性脑栓塞治疗指南
- 南湖红船景区讲解
- 2025年少先队辅导员知识竞赛题库及答案
- 2023年游泳竞赛规则
- 供货进度保证措施方案
- 2025至2030可穿戴生命体征监护仪行业市场占有率及投资前景评估规划报告
评论
0/150
提交评论