数据库课程设计――图书管理系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1/23数据库系统原理课程设计报告设计题目:图书借阅管理系统班级:组号:学号姓名①:②:③:④:指导教师:设计时间:《数据库系统原理》课程设计2/23设计小组情况表班级组号设计时间小组成员学号姓名选题图书借阅管理系统设计要求(1)系统分析设计要能完成题目所要求的功能;(2)在基本要求达到后,可进行创新设计与提高,如完善的功能、友好的人机界面、功能的高效率等。(3)学生用户:图书情况查询(可根据书号、书名、作者、出版社、类别等条件进行查询),本人借阅信息查询(4)管理员:新进图书录入,借书证办理,借书、续借、还书的办理,各种信息查询、统计和维护小组分工及成绩姓名分工小组自评教师评分总评需求分析,数据库的实施,教师功能模块的设计实现需求分析,应用系统总体设计,学生功能模块的设计实现,需求分析,应用系统界面设计,应用系统测试,统稿需求分析,概念结构设计,逻辑结构设计3/23目录1选题原因……………………………………………………………22系统需求分析………………………………………………………22.1读者登记处……………………………………………………………22.2图书总管部门…………………………………………………………22.3图书借还处…………………………………………………………23总体结构分析……………………………………………………34数据库概念结构设计………………………………………44.1实体………………………………………………………………44.2ER图………………………………………………………………55数据库逻辑结构设计………………………………………65.1一般逻辑模型设计………………………………………………65.2具体逻辑模型设计…………………………………………………66数据库完整性设计……………………………………………76.1设计表间关系……………………………………………………………76.2完整性设计………………………………………………………………87数据库应用系统的实现………………………………………88课程设计感想………………………………………………………129附注SQL语言…………………………………………………………1310开发环境……………………………………………………………………1411参考文献………………………………………………………………………154/231选题原因数据库技术和Internet的飞速发展,使他们已经成为现代信息技术的重要组成部分,是现在计算机信息系统和计算机应用系统的基础和核心。对于拥有庞大人员的学校的管理来讲,数据的有效使用是一个学校能否进行有效管理的一个关键。学校作为一个学习的地方,一定会有一个图书馆。有图书馆就必定要有管理,这样学校图书管理系统就显得更为重要。学校图书管理系统适应于绝大多数的学校图书馆的管理。应用此系统可以将众多的学生信息和图书信息进行有效的管理,提高学校的效率。(收集资料,查阅文件时知道的)2系统需求分析(根据现实中的图书借阅要求以及图书管理系统)(1)读者登记处(录入读者的信息)学生需要通过办理图书证之后才能进行图书借阅。图书证包括借书证号,姓名,读者类型,借书人院系等信息。在读者登记处,需要把读者的有关信息添加到信息系统中保存,当读者信息发生改变时,需要对计算机里的内容进行相应的修改。当读者办理退证手续时,需要删除相应的读者信息。(2)图书总管部门(管理员)①图书管理部门负责书籍和出版社等的信息管理,具体如下:(1)图书信息管理。完成图书的录入、修改、删除和查询功能。在查询图书信息时,可随时查询书库中现有书籍的类型、书号、书名、作者、数量等信息。所有书籍都可由书号唯一标识。(2)为了方便使用,需保存出版社相关信息。这些信息包括出版社编号、名称、电话、邮编、地址、联系人等。(3)图书借还处①图书借还处负责图书的借阅和归还工作。具体如下:(1)读者借书管理。读者可以根据图书类别和书名查找自己要借阅的图书。(2)还书管理。在办理还书业务时,所有借出的图书均在“借还情况”表中,表中未出现的,则为已还或者已经注销。此外,对于书籍、读者和出版社等信息,系统管理员可以做添加、修改、删除和查询操作。普通读者只能查询。3总体结构分析5/234数据库概念结构设计图书管理系统管理员(教师)读者(学生)功能:管理图书读者功能:查询图书信息借还情况种类数量书号出版社存放位置(作者)借书证号借还情况读者类型姓名6/23(1)实体之间的联系(有下划线的为主键),具体如下:实体1:书籍【种类、数量、存放位置、书号、书名、出版年、作者、出版社编号、价格】实体2:读者【借书证号、姓名、性别、借书人单位、读者类型】实体3:出版社【出版社编号、出版社名、电话、邮编、地址】实体4:借还情况【借书证号、书号、借书日期、还书日期】实体5:读者身份【读者类型、可借阅天数、可借阅数量】(2)改进后的整体E-R图,具体如下图所示:(转下一页)读者借还书籍出版出版社还书日期借书日期电话出版社编号种类书号出版年作者书名数量存放位置地址邮编读者身份包含读者类型可借阅天数姓名性别借书人单位借书证号出版社名MNPQW17/235数据库逻辑结构设计(1)一般逻辑模型设计一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。数据表主要用来存放一定各式的纪录,数据表中的行称为纪录,列被称为字段,创建数据表的过程其实就是定义字段的过程。在此图书管理系统中需要创建5个表,即读者、书籍、借还情况、出版社、读者身份表。(2)具体逻辑模型设计读者表:创建此表所需要的字段名是:姓名、借书证号、性别、借书人单位读者类型,其中借书证号设为主键。字段名字段类型字段宽度小数点关键字借书证号char20------------主键姓名char10------------性别char2------------单位char30------------读者类型char4------------出版社表:用于记录书籍出版社信息,所需要的字段名是:出版社编号、出版社名、电话、邮编、地址,其中出版社编号是主键。字段名字段类型字段宽度小数点关键字出版社编号tinyint------------主键出版社名char30------------电话char50------------邮编char30------------地址char50------------书籍表:用于记录书籍信息,所需要的字段名是:书号、书名、数量、类型、出版年、作者、出版社编号、存放位置。主键是书号。字段名字段类型字段宽度小数点关键字8/23书号char10------------主键书名char50------------数量tinyint------------类型char30------------出版年tinyint------------作者char10------------出版社编号tinyint------------存放位置char30------------读者身份表:用于记录读者类型信息,是学生还是老师。所需要的字段名是:读者类型、可借阅天数、可借阅数量。主键是读者类型。字段名字段类型字段宽度小数点关键字读者类型char4------------主键可借阅天数tinyint------------可借阅数量tinyint------------借还情况表:用于记录读者借还图书的情况。所需要的字段名是:借书证号、书号、借书日期、还书日期。主键是借书证号、书号。字段名字段类型字段宽度小数点关键字借书证号char20------------主键书号char10------------主键借书日期datetime8------------还书日期datetime8------------6数据库完整性设计(1)设计表间关系读者表通过读者类型和读者身份表联系,书籍表通过出版社编号和出版社表联系,借还情况表通过借书证号和书号与读者表和书籍表联系。(2)完整性设计9/23实体完整性约束:关系中的主属性不能为空。在数据库中使用Primarykey实现。参照完整性约束:读者与书籍,出版社与书籍,读者与读者身份,借还情况与读者和书籍表之间采用级联更新和级联删除。用户定义的完整性约束:规定姓名、书名借书日期非空,借书日期设置默认值为当前时间。7.数据库应用系统的实现(1)建数据库(学校图书管理)(2)建表①读者身份表②读者表10/23③出版社表④书籍表11/23⑤借还情况表(3)输入数据①读者身份表②出版社表12/23③书籍表④读者表⑤借还情况表13/23登陆界面(学生和老师双入口)14/23学生登陆时,提示还书学生借阅情况查询以及借阅书籍的信息学生可以查询馆藏或者查询指定书号的图书15/23教师登陆后的端口新建读者16/23新建图书17/23借书以及续借还书以及注销读者和注销图书18/23总的借阅情况以及查询指定借书证号的学生借阅情况课程设计感想(总结)在设计这个系统中,不断地遇到不少问题,主要有下:(1)不熟悉系统流程图,不知如何下手。通过参考一些优秀的课程设计范本,仔细观察总结,得出业务流程图实际是要表示此数据库是怎样帮助使用者进行数据管理和查询的,整理思路画出流程图。(2)输入数据时总是不成功,出现“将截断字符串或二进制数据”信息,反复检查后才发现是建表时疏忽了字段长度。此外,还有很多很琐碎的问题,都是通过与同学讨论而得以解决。(3)“学校图书管理系统”是我们四个人亲自完成的。经过四个人一番心血、不断的努力,这个设计才能顺利完成。其既有成功的一面也有很多不足待改善的地方。在日后的学习中定能不断的改进,使其更方便,功能更完善。(4)通过这次图书管理系统的数据库课程设计,可以对数据库设计的整个过程有进一步了解,对SQL的运用也熟悉很多。但我们知道这还不是完整的一个管理系统,要让它能够得到实际运用还需要改进很多。(5)在设计过程中,我们遇到了很多问题,很多都是靠相互间的帮助以及查阅资料解决的。很多时候,同学间的互助是最直接的最快捷的。虽然并不是每个同学都很厉害,但我们可以互相讨论,研究。许多的问题就是这样发现和得以解决的。正所谓三人行,必有我师。通过这次的作业,我们同学间的合作更加紧密了。(6)当然,和同学讨论之前,都是要先参考书籍,独立思考,得不到答案再去寻求他人帮助。这就是我们对这次课程设计的一个体会。虽然在这次的设计中还存在不少问题,但也收获良多。希望我们在以后的学习过程中能不断的进步。附注——SQL语言1建立数据库19/23createdatabase学校图书管理on(name=library,filename='e:\SQL\design\design2.mdf',size=10,maxsize=50,filegrowth=5)logon(name=library_log,filename='e:\SQL\design\design2.ldf',size=5,maxsize=25,filegrowth=5)2建表(1)读者身份createtable读者身份(读者类型char(4)check(读者类型in('教师','学生'))primarykey,可借阅天数tinyintnotnull,可借阅数量tinyintnotnull)(2)读者createtable读者(借书证号char(20)primarykey,姓名char(10)notnull,性别char(2)check(性别='男'or性别='女'),借书人单位char(30),读者类型char(4)foreignkeyreferences读者身份(读者类型))(3)出版社createtable出版社(出版社编号char(30)primarykey,出版社名char(30)notnull,电话char(50),邮编char(30),地址char(50))(4)书籍createtable书籍(书号char(10)primarykey,书名char(50)notnull,数量tinyintnotnull,20

1 / 23
下载文档,编辑使用

©2015-2020 m.111doc.com 三一刀客.

备案号:赣ICP备18015867号-1 客服联系 QQ:2149211541

×
保存成功