/学年第学期实验报告课程名称:数据库原理及应用实验名称:图书管理系统班级学号学生姓名指导教师日期:年月实验一一、实验题目:了解SQLServer2005与设计数据库模型二、实验目的:了解SQLServer2005,熟悉如何在SQLServer2005环境下建数据库和表,学会建数据库、表、视图的操作三、实验内容:1.打开SQLServer,建立一个新数据库。2.建立基本表首先,我们建立相关表结构。本实验表结构如下所示:Student(Sno,Sname,Sex,Sage,Sdept);SC(Sno,Cno,Grade);Course(Cno,Cname,Cpno,Credit);以上数据库表的含义为:Student—学生:Sno(学号),Sname(学生姓名),Sex(性别),Sage(年龄),Sdept(系)Course—课程:Cno(课程号),Cname(课程名),Cpon(选课人数),credits(学分)SC—成绩:Sno(学号),Cno(课程号),Grade(成绩)(1)创建表鼠标右键单击所要建表的数据库,“新建”→“表…”弹出如图1所示界面,在别名里输入字段名,然后选择数据类型,确定数据长度,是否允许为空。也可以填写有关列的部分属性。图1(2)修改表在相应的数据库中选定要修改的名,右键单击,或选择菜单“操作”,选择“设计表”,弹出如图2所示界面,可以对表的列进行修改,增加或删除列等操作。图2(3)删除表选择要删除的表,右键单击,在弹出菜单中选择删除,踏出如图3所示的界面,选择按钮“全部除去”。图3(4)输入表格数据学生表内容包括学号,姓名,性别,年龄和所学专业。建立表如下图4所示:图4课程表包括课程号,课程名,选课人数和学分。建立表如下图5所示:图5成绩表包括学号,课程号和成绩。建立表如下图6所示:图63.建立视图在相应的数据库下,选择视图,在“操作”菜单下选择“新建视图”,弹出如图7所示界面,在上方工作区,右键单击,在弹出菜单中选择“添加表”,如图8。图7图8如果想查看或修改视图时,右键单击所要查看或修改的视图,选择“设计视图”,弹出如图9所示界面,可以对视图进行查看或修改。图9实验二一、实验题目:自主开发二、实验目的:掌握数据库系统的开发流程,实践DBMS提供的数据完整性功能,加深对数据完整性的理解三、实验内容:为了加深对于数据库的开发理解,我设计了一个图书管理系统数据库。制定一套合理、有效、规范和实用的图书管理系统,对图书资料进行集中统一的管理。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。使图书管理者便于对图书和读者的管理。1、需求分析系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。使图书管理者便于对图书和读者的管理。对此,我先为图书管理系统设定了具体功能目标如下:(1)借书操作:用户借书后在借出图书信息表中添加用户信息及书籍信息等,并将图书信息表中的数量减1;(2)续借操作:当用户借阅图书后,如需延长借阅日期则可使用此功能续借图书;(3)还书操作:用户归还书籍后在借书表中删除借出信息,同时在图书信息表中将对应书籍的数量加1,便于他人借阅。并在还书表中增加借书历史的信息;(4)逾期罚金:归还书籍时如果超过期限,规定超过一天罚钱;(5)查询借书信息:查询借书表中读者已借的图书信息。为了清楚描述系统各模块功能,我搭建了系统功能结构图如图10所示:图102、概念结构设计这一阶段我们将客户的应用需求抽象为信息世界的结构,即对系统的人、物、事和概念进行人为处理,抽取人们所关心的共同特性,同时把这些特性用概念精确的描述。我们首先根据需求分析的结果(数据流图、数据字典等)对现实世界的数据进行抽象,设计各个局部E-R图,然后合并成初步E-R图,再进行修改与重构。我将图书管理系统主要分为以下几个局部E-R图:借阅者E-R图图11借阅者E-R图图书信息E-R图图12图书信息E-R图管理员E-R图图13管理员E-R图借书清单E-R图图14借书清单E-R图最终得到全局E-R图,如图15所示:图15全局E-R图3、逻辑结构设计图书信息(图书编号,书名,作者姓名,出版社,出版日期,在库数,所在书库)借阅者(姓名,学号,班级,院系)管理员(管理员编号,姓名,负责书库)还书清单(图书编号,管理者编号,图书名称,还书日期,还书数)借阅(学号,图书编号,借出日期,到期日期,拖欠日期,罚款数目)管理(管理员编号,学号,图书编号)4、物理结构设计建立索引:(1)CREATEUNIQUEINDEX图书编号ON图书信息(图书编号)图16(2)CREATEUNIQUEINDEX管理员编号ON管理员(管理员编号)图17(3)CREATEUNIQUEINDEX学号ON借阅者(学号)图185、数据库构建与装入(1)表单1借阅者表单图192图书表单图103管理员表单图114管理表单图125销书清单表单图136借阅表单图14(2)数据截图1借阅者数据图152图书数据图163借阅数据图176、功能实现连接查询查询的全部信息:SELECT姓名FROM借阅者,借阅WHERE借阅者.学号=借阅.学号显示结果:图18分组查询求图书信息表中在库书的数量:SELECTCOUNT(*)FROM图书信息显示结果:图19实验小结: