图书管理系统-数据库课程设计_第1页
图书管理系统-数据库课程设计_第2页
图书管理系统-数据库课程设计_第3页
图书管理系统-数据库课程设计_第4页
图书管理系统-数据库课程设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、大连科技学院数据库课程设计题 目 超市管理系统 学生姓名 孟繁章 专业班级 计算机10-1 指导教师 刘瑞杰 职 称 讲师 所在单位 信息科学系软件工程教研室 教学部主任 王立娟 完成日期 2013年09月27日课程设计报告单学号1001020115姓名孟繁章专业班级计算机10-1考 核 项 目评分备注1平时工作态度及遵守纪律情况(10分)2掌握基本理论、关键知识、基本技能的程度和阅读参考资料的水平(10分)3独立工作能力、综合运用所学知识分析和解决问题能力及实际工作能力提高的程度(20分)4完成课程设计说明书及软件的情况与水平(小组分工情况、规范性、整洁清楚、叙述完整性、思路清晰程度、工作量

2、及实际运行情况和创新性)(60分)总评成绩综 合 评 定:(优、良、中、及格、不及格) 指导教师签字:2013年9月27日摘 要系统名为图书管理系统。根据开发要求,它主要应用于教育系统,完成对图书信息的管理。开发图书管理系统可以让学校有效的管理学校内各学生的信息。同时,也可以减少劳动力的使用、加快查询速度、加强管理。目前,学校工作繁杂、资料重多。鉴于这些情况,学校很是需要这类的信息管理系统。而对于学籍管理系统来说,目前还没有一套很完整的、很统一的系统。因此,应该看到社会的真正需要,有意识的进行开发和研究。开发一套适和大众的、兼容性好的系统是很有必要的。 综上,开发这样的一套软件十分必要。同时旧

3、的人工管理机制必将被以计算机为基础的信息管理所取代,从而实现对数据的高效,长久,安全的管理。 由于多种原因,学籍管理系统只有一个主要的功能,就是管理学生的学籍信息,在其下面,还有增加记录、删除记录、修改记录、查询、显示全部记录等功能。在开发过程中,使其符合操作的业务流程,并力求系统的全面性、通用性,使得本系统不只适用于一家教育机构。在开发方法的选择上,选择了生命周期法与原型法相结合的方法。而在具体的设计上,采取了演化式原型法。在开发工具的选择上,主要利用Visual C+编程语言和SQL server 2000关系型数据库来进行开发。本文讲述的是学籍管理系统的需求分析、数据库的概念设计、概念模

4、型与关系模型的转换、应用程序设计以及编程实现。关键词 图书管理系统,Visual C+编程语言和SQL server 2000关系型数据库。目 录1 绪论11.1 课题简介11.2 设计目的11.3 设计内容12 需求分析12.1 需求分析的任务22.2 数据流程图22.3 数据字典33 数据库概念结构设计43.1 局部概念模型设计43.2 全局概念模型设计54 数据库逻辑结构设计74.1 E-R图向关系模型的转换74.2 数据模型的优化74.3 数据库的结构75.数据库物理结构设计95.1 数据库建库95.2 数据表及视图的建立96.系统实现13总 结14参考文献151 绪 论1.1 课题简

5、介数据库技术和Internet的飞速发展,使它们已经成为现代信息技术的重要组成部分,是现在计算机信息系统和计算机应用系统的基础和核心。对于任何一个企业来说,数据是企业重要的资产,如何有效利用这些数据,对于企业发展起着极其重要的作用。随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆藏书的树木逐渐增大,这也挑战了图书管理方面的技术,以前的人工管理方式已经不再适应现在的环境,取而代之的是先进的图书管理系统,通过使用PowerBuilder创建的图书管理系统可以让管理人员方便而快捷的进行管理、查询、借阅、录入等工作。1.2 设计目的 通过本次课程设计使自己能够综合运用所学的关系数据库原理知识

6、解决并能设计一个实际问题,进一步掌握数据库原理的相关理论和数据库的设计实现过程,进一步提高自己的分析问题能力和解决问题的能力以及动手能力。1.3设计内容图书馆管理系统开发。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。本系统结构分为读者类别管理、读者档案管理、图书类型管理、图书档案管理以及图书流程管理,读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以

7、对借阅信息进行维护。本系统主要解决的问题是利用关键字对数据库进行查询。2 需求分析2.1 需求分析的任务设计一个图书管理系统,与之有关的对象有管理员、读者、图书等。问题描述:1) 学校图书馆有各种各样的图书。2) 每图书都有书名、图书编号、作者、出版社等属性。3) 借书记录有借阅者的学号、姓名、性别、所在院系、借书时间、还书期限等属性。4) 读者次最多能借5本书、借书期限为15天。所设计的图书馆里系统具有以下功能:1.图书信息的维护(包括录入,修改和删除);2.读者信息的维护(包括录入,修改和删除);3.借阅(借,还)信息的维护(包括借,还信息录入,修改和删除)。2.2 数据流程图(1)读者进

8、入系统的流程图为:登陆查询借阅续借修改密码归返注销图2-1 读者系统流程图(2) 图书管理员工作的流程图为: 图书登记注册录入超期处理注销修改信息图2-2 管理员工作流程图2.3 数据字典(1)读者作为学生对图书馆里系统的要求有:1能按各种方式(书名、编号、作者)查询图书馆的藏书情况。2.能够方便的借阅图书、续借图书、归返图书。3.能够查询自己的基本资料、借阅图书情况。4.能够熟悉图书管理系统的使用。(2)图书管理员作为图书管理员,他们对图书管理系统的要求有:1.能够方便的对图书进行录入登记,注销陈旧的图书。2.能够方便的对新生进行登记,或注销已经毕业的学生信息(基本信息,借阅信息)。3.能够

9、随时发布一些诸如各学院的学生借阅图书超期情况、图书馆内藏书情况、借阅情 况等信息以便各学院能够随时获取本学院学生的一些借书信息。3 数据库概念结构设计3.1 局部概念结构设计(1)读者信息类别实体E-R图 读者借书证号读者姓名联系电话所在院系读者学号 图3-1 读者信息E-R图(2)图书信息E-R图 图书图书编号简介出版社作者书名图3-2 图书信息E-R图(3)图书借阅E-R图:图书借阅工作号借书日期图书编号读者学号还书日期是否续借图3-3 图书借阅E-R图(4) 管理员信息E-R图:管理员信息工作号姓名性别电话图3-4 管理员信息E-R图3.2 全局概念模型设计(1)管理员、图书、读者之间的

10、联系E-R图:性别工作号读者姓名所在院系联系电话 管理员管理 图书借阅 读者姓名电话超期处理注册录入 注销修改信息简介出版社作者书名图书编号借书日期还书日期借书证号图3-5 管理员、图书、读者之间的联系E-R图(2)实体之间关系E-R图: 读者信息读者登记读者信息管理 借阅信息管理图书类别信息图书信息管理图书登记图3-6 实体之间的联系E-R图4 数据库逻辑结构设计4.1 E-R图向关系模型的转换 从理论E-R模型到理论关系模型的整理转换,通过E-R模型到关系模型的转化,可以得到如下关系模式:借阅关系属性:借书证号,读者学号,图书编号,借书日期,还书日期。主键:借书证号。管理员-图书关系属性:

11、工作号,图书编号,添加时间,是否在馆主键:工作号管理员-学生关系主键:工作号,读者学号,确认借还主键:工作号,读者学号4.2 数据模型的优化4.3 数据库的结构通过上述分析得到如下数据表:(1) 图书信息表:列名 数据类型主键/外键字段大小可否为空图书编号varchar主键10 否书名varchar20 否作者varchar20 否出版社varchar30是(2)读者信息表:列名字段大小数据类型 主键/外键可否为空读者学号10 varchar主键否读名10varchar否联系电话10varchar否所在院系20varchar是借书证号10varchar否(3)管理员信息表: 列名 字段大小 数

12、据类型可否为空工作号10varchar否姓名10 varchar否性别5varchar是电话10varchar否(4)借阅表: 列名 数据类型 字段大小可否为空借书证号varchar10否读者学号varchar10否图书编号varchar10否借书日期datetime10是还书期限datetime10是是否续借varchar10是5 数据库物理结构设计5.1 数据库建库1.建立数据库(1)管理员数据表的建立Create table 管理员信息表(工作号 varchar(10) primary key not null,姓名 varchar(10) ,性别 varchar(10),电话 varc

13、har(10);(2)图书信息表的建立create table 图书信息表(图书编号 varchar(20) primary key not null,书名 varchar(50) not null,出版社 varchar(20) not null,作者 varchar(20) not null);(3)读者信息表的建立create table 读者信息表( 读者学号 varchar(10) primary key not null, 读者姓名 varchar(10) not null, 联系电话 varchar(10) not null, 读者性别 varchar(5) not null,

14、所在院系 varchar(10)(4)借阅关系表建立create table 借阅表( 工作号 varchar(10) primary key not null, 读者学号 varchar(10) not null, 图书编号 varchar(10) not null, 借书日期 datetime not null, 还书期限 datatime not null, 是否续接 varchar(10) not null)2. 建立索引(1)为读者信息表创建索引。create unique index 读者信息_pk on 读者信息表 (读者学号);(2)为图书信息表创建索引create uniqu

15、e index 图书信息_pk on 图书信息表 (图书编号);(3)为管理员信息表创建索引create unique index 管理员信息_pk on 管理员信息表 (工作号);3. 建立触发器(1)当修改读者信息表中的读者学号时,触发借阅表,修改相应的记录create trigger r_修改on 读者信息表for updateas declare old_读者学号 varchar(10) declare new_读者学号 varchar(10)set old_读者学号=(select 读者学号 from deleted)set new_读者学号=(select 读者学号 from in

16、serted)update 借阅表set 读者学号=new_读者学号借阅where 读者学号=old_读者学号(2)当修改图书信息表中的图书编号是,触发借阅表,修改相应的信息create trigger b_修改on 图书信息表for update as declare old_图书编号 varchar(10) declare new_图书编号 varchar(10)set old_图书编号=(select 图书编号 from deleted)set new_图书编号=(select 图书编号 from inserted)update 借阅表set 图书编号=new_图书编号where 图书编

17、号=old_图书编号(3)当删除读者信息表中的某一读者信息时,触发借阅表,删除相应的记录create trigger r_删除on 读者信息表for deleteas begindelete from 借阅表where 读者学号=(select 读者学号 from deleted)end(4)当删除图书信息表中的相关信息时,触发借阅表,删除相关信息create trigger b_删除on 图书信息表for delete as begindelete from 借阅表where 图书编号=(select 图书编号 from deleted)end4. 建立存储过程(1)建立录入读者信息存储过程

18、create procedure proc_录入读者信息(读者学号 varchar(10) ,读者姓名 varchar(10),联系电话 varchar(10),读者性别 varchar(5),所在院系 varchar(10) ) as insert into 读者信息表(读者学号,读者姓名,联系电话,读者性别,所在院系)values(读者学号,读者姓名,联系电话,读者性别,所在院系 )(2)建立录入图书信息存储过程create procedure proc_录入图书信息(图书编号 varchar(10),书名 varchar(10),作者 varchar(10),出版社 varchar(10

19、),类别 varchar(10)as insert into 图书信息表(图书编号,书名,作者,出版社,类别)values(图书编号,书名,作者,出版社,类别)(3)建立借阅信息存储过程create procedure proc_借阅信息(工作号varchar(10),读者学号 varchar(10),图书编号varchar(10),借书日期 datatime,还书期限 datatime,是否续借 varchar(10)as insert into 借阅表(工作号,读者学号,图书编号,借书日期,还书期限,是否续借)values(工作号,读者学号,图书编号,借书日期,还书期限,是否续借)(4)建

20、立管理员信息存储过程create procedure proc_管理员信息(工作号varchar(10),姓名 varchar(10),性别varchar(5),电话 varchar(10)as insert into 管理员信息表(工作号, 姓名, 性别,电话)values(工作号,姓名,性别,电话)(5)建立一个查询学生所借阅的图书数目的存储过程,管理管理员只要输入相应学生的学号,系统自动显示其所借阅的图书数目create procedure proc_借书本数 读者学号 varchar(10) asselect 读者学号,count(*) as 借书本数from 借阅表where 读者学号=读者学号group by 读者学号5.2 数据表及视图的建立创建查询视图:create view 查询_view(读者学号,读者姓名,读者性别,所在院系,书名,借书日期)asselect 借阅表.读者学号,读者姓名,读者性别,所在院系,书名,借书日期from 读者信息表,图书信息表,借阅表where 读者信息表.读者学号=借阅表.读者学号 and 借阅表.图书编号=图书信息表.图书编号6 系统开发所用到的技术本系

温馨提示

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

评论

0/150

提交评论