图书管理系统数据库实验设计

合集下载

数据库系统实验报告4(简单图书馆管理数据库的实现)

数据库系统实验报告4(简单图书馆管理数据库的实现)

6
图书信息表:
2.还书后: 借阅信息表:
图书信息表:
备注: 1、表头及以下的栏目和内容,不得更改;其它栏目的位置可以适当调整,可以根据需要适当增加或减少 页。 2、本课程包含多次实验,请每次实验项目填写一份。
7
2
利用 sf_borrow,sf_return 进行借、还操作,并注意数据库中三个表的数据变化情况。 三、实验结果及分析 (一)创建数据库和数据表: 选择用企业管理器创建数据库、数据表
3
(二)数据相关操作: 1.查询:
2.删除:
4
删除后:
3.更新:
更新后:
(三)创建触发器、存储过程进行借还书操作: 1.针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 CREATE TRIGGER Insert_borrow ON dbo.借阅信息表 FOR INSERT AS begin update 图书信息表 set 状态=0 from Inserted i,图书信息表 t where t.书号=i.书号 end 2.针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。
作者 sql c++ ms java c# net
状态 1 1 1 1 1 1
借书证号 1 2 3
姓名 张三 李四 王五
住址 学三 学四 学五
并对这两个表进行删除、更新、和查询等操作 三、创建触发器、和存储过程进行借、还书操作 1) 针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 2) 针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。 3) 创建存储过程:sf_borrow,实现借书功能即:向借阅信息表进行插入操作,将书号、借书证 号,借书时间作为参数,并自动的将还书时间设置为借书时间后一个月。 4) 创建存储过程:sf_return,现实还书功能即:根据书号对借阅信息表进行删除操作,将书号 作为参数。

数据库——图书管理系统实验报告

数据库——图书管理系统实验报告

《图书管理系统》实验报告学院:通信与信息工程班级: __0101110姓名:杨超 2011210309一、实验题目图书管理系统二、实验目的及要求1.掌握数据库应用软件设计的整个流程(1)掌握编写软件设计计划书,策划软件的方法(2)掌握建立数据库,设计表、字段的方法(3)掌握制作软件的整个步骤与过程(4)掌握软件的测试与编译工作。

2.掌握数据库设计软件ACCESS的使用、图像处理软件的使用和VBA脚本语言的使用(1)掌握数据库的建立,管理操作方法,明确数据库的目录结构(2)掌握SQL语言的基本操作、ACCESS应用的布局方法、样式、框架和组件的操作方法。

(3)掌握用一种处理图像的方法(4)掌握用VBA脚本设计数据库应用的方法(5)掌握软件的测试与发布工作的方法。

三、实验环境Microsoft Office Access 2003四、实验步骤及内容(一)根据图书管理系统的需求分析,设计出图书管理系统的E-R图如下(二)使用Access2003来创建一个图书管理系统,具体步骤如下:1.双击桌面的,开启Access2003.2.点击“文件”→“新建”→“空数据库”,命名为“杨超邹嘉雯图书管理数据库”。

3.数据表的创建与设计:(1)在中使用创建一下三个表:读者信息表:借书信息表图书信息表:(2)在数据库视图中,单击菜单栏中的,创建如下的各表之间的关系(3)往表里输入一下数据:读者信息表:借书信息表:图书信息表:4.查询的设计:使用创建如下的查询每个查询的SQL视图吐下:A.按借书证号查询:SELECT 读者信息表.借书证号, 借书信息表.图书编号, 读者信息表.姓名, 读者信息表.学号, 读者信息表.班级, 读者信息表.借书名称, 借书信息表.借出日期, 借书信息表.应还日期, 借书信息表.是否已还, 借书信息表.过期天数FROM 读者信息表INNER JOIN 借书信息表ON 读者信息表.借书证号=借书信息表.借书证号WHERE Forms!按借书证号查询.请输入借书证号:=借书信息表.借书证号Or Forms!按借书证号查询.请输入借书证号:Is Null;B.按借书证号查询读者信息:SELECT 读者信息表.借书证号, 借书信息表.图书编号, 读者信息表.姓名, 读者信息表.学号, 读者信息表.班级, 读者信息表.借书名称, 借书信息表.借出日期, 借书信息表.应还日期, 借书信息表.是否已还, 借书信息表.过期天数FROM 读者信息表INNER JOIN 借书信息表ON 读者信息表.借书证号= 借书信息表.借书证号WHERE (((读者信息表.借书证号)=[按借书证号查询:]));C.按图书编号查询图书信息:SELECT 图书信息表.图书编号, 图书信息表.分类号, 图书信息表.书名, 图书信息表.书号, 图书信息表.作者, 图书信息表.出版社, 图书信息表.库存量, 图书信息表.入库时间FROM 图书信息表WHERE (((图书信息表.图书编号)=[按图书编号查询:]));D.过期未还书籍SELECT 图书信息表.图书编号, 图书信息表.书号, 图书信息表.书名, 借书信息表.借出日期, 借书信息表.应还日期, 借书信息表.是否已还, 借书信息表.过期天数FROM 图书信息表INNER JOIN 借书信息表ON 图书信息表.图书编号= 借书信息表.图书编号WHERE (((借书信息表.是否已还)=No) AND ((借书信息表.过期天数)>"0"));E.借出书籍信息:SELECT 借书信息表.借书证号, 借书信息表.图书编号, 图书信息表.分类号, 借书信息表.书名, 图书信息表.书号, 借书信息表.借出日期, 借书信息表.应还日期, 图书信息表.作者, 图书信息表.出版社, 图书信息表.库存量, 图书信息表.入库时间FROM 图书信息表INNER JOIN 借书信息表ON 图书信息表.图书编号= 借书信息表.图书编号GROUP BY 借书信息表.借书证号, 借书信息表.图书编号, 图书信息表.分类号, 借书信息表.书名, 图书信息表.书号, 借书信息表.借出日期, 借书信息表.应还日期, 图书信息表.作者, 图书信息表.出版社, 图书信息表.库存量, 图书信息表.入库时间;F.未还书籍查询:SELECT 借书信息表.借书证号, 借书信息表.图书编号, 借书信息表.书名, 借书信息表.借出日期, 借书信息表.应还日期, 借书信息表.是否已还FROM 借书信息表WHERE (((借书信息表.是否已还)=No));5.报表的打印:在数据库窗口中选择“报表”,使用创建如下报表:在窗体“图书信息”中设置“打印”按钮,连接到报表的打印界面,如图:点击打印则出现报表,进入打印过程。

mysql(图书管理系统实验报告)

mysql(图书管理系统实验报告)

数据库课程设计报告专业:微电子技术系班级:2940710820姓名:指导教师:成绩:2011年12月12日一、课程设计概述1.课程设计背景某大学图书馆开发一个图书管理系统,要求在读者登记处可以将读者的信息添加,信息系统中保存,当读者信息发生变化,对计算机内容进行修改,当读者办理退卡手续要删除此读者信息,图书管理负责图书和出版社的管理,读书借还处进行借书管理,还书管理,罚款处理,库存查询,图书排行榜,生成超期未还书的读者,进行通知.给不同用户设置不同权限,供用户访问数据库.2.编写目的让学生熟练掌握mysql中的创建数据库、创建表、显示、查询、select语句、视图、存储过程、创建检索、对表的添加、删除、修改和用户权限的设置等基本运用,并通过编写这个图书管理系统,来实际演练,达到融会贯通的效果。

3.软件定义Mysql是目前最流行的开源的中小型关系数据管理系统,目前被广泛的应用于internet 上得中小型网站中,它由mysql AB公司开发、发布并支持。

本实验用的是mysql 5.1版本4.开发环境本实验用的是mysql 5.1版本,windows2007二、需求分析1.问题的提出1:怎么通过mysql和信息之间的关系来创建图书管理系统的数据库及表?2:怎样来实现对插入读者信息并保存、修改及删除?3:怎么来实现对图书的管理?4:怎样实现对借书后在读书借还处添加读者借书信息和还书后删除读者借还处中的借书信息且更新图书管理处的图书数量?5:怎么实现对超期读者进行罚款操作和生成这些读者的名单,以方便通知?6:怎样实现图书的借书排行榜和查看库存书量?7:怎么样来根据不同用户对数据库的等级的不同来设置这些用户的权限?2.需要完成的功能及各部分功能概述1:读者登记建卡处的功能是对读者基本信息进行登记,读者信息发生变化对读者基本信息进行修改,读者要求退还借书卡时对读者信息进行删除等操作2:图书管理处的功能是对图书和出版社、作者、书价,数量,剩余书量进行管理更新。

数据库《图书管理系统》综合实验报告

数据库《图书管理系统》综合实验报告

华北科技学院计算机系综合性实验实验报告课程名称《数据库系统A》实验学期2011 至2012 学年第 2 学期学生所在系部计算机学院年级2010 专业班级网络B10—3班学生姓名安志欣学号200907024320 任课教师郭红实验成绩计算机系制《数据库系统B》课程综合性实验报告借阅执行后的读者信息状态:图书归还后的读者信息状态:创建存储过程后,对dm为1003的读者的借阅信息进行查询后的结果:四、实验结果及分析数据库创建后,对其性能进行测试。

对图书借阅表进行更改,执行语句后,触发器t2首先工作,看读者是否还具有借阅权限,当有借阅权限时对读者信息进行更改,将读者的借阅次数加1,以此来实现对读者以后借书数量的限制。

;t3工作,对图书基本信息中的数据进行修改。

当读者归还图书时,t1工作,删除图书借阅表中的图书信息,图书的库存量相应增加,t4工作,使读者的借书次数减1,使读者可以以后继续借书.用存储过程p1,实现读者对借书信息的查询。

输入语句,并对语句执行后,显示出所输入编号对应读者的借阅信息;p2用于查询每本图书的借阅情况.相对来说,这个数据库的功能还有很大的改进空间,比如安全性方面的问题,读者不能对自己的登录密码进行更改,当有人知道某个读者的编号后,就可以对读者的信息查询,这些都使这个数据库不够完美。

但,这个数据库可以使读者对自己的借书信息,归还信息,个人信息进行查询,在对图书借阅的时候,自动对读者,图书馆藏信息进行更改,在归还图书时,可以对读者和馆藏信息更改,从而减少了图书管理员的操作内容,避免了由于人员输入出错导致数据不能操作的现象.用存储过程减少了临时对语句输入所耗费的时间,提高了系统的操作效率.体会:对于这次综合实验的设计,最开始没有担心太多事情,因为时间给的很多,而且对于图书馆的一些管理内容的东西有比较多的经历,所以最开始就只是先对图书管理的需求进行了下简单的分析,同时进入学校的图书馆管理系统体会已经设计好的数据库系统所应包含的功能与信息。

图书管理系统数据库设计示例

图书管理系统数据库设计示例

图书管理系统数据库设计示例第一篇:图书管理系统数据库设计示例图书管理系统数据库设计一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息以及学生的借阅信息。

此系统功能分为面向学生和面向管理员两部分,其中学生可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认。

一、需求分析针对一般图书管理信息系统的需求,通过对图书管理工作过程的内容和数据流程分析,设计如下面所示的数据项:1.读者信息属性:读者学号,读者姓名,读者性别,联系电话,所在系,生效日期,失效日期,违章状况,累计借书,备注主键:读者学号2.书籍信息属性:ISBN,书名,作者,出版社,出版日期,简介,备注主键:ISBN 3.管理员信息属性:工作号,姓名,性别,电话,家庭住址,备注主键:工作号数据流程通过对系统的调查和可行性分析,画出系统的数据流程图:1.读者学生对图书管理系统的要求有:1)能按各种方式(比如书名、编号、作者)查询图书馆的藏书情况。

2)能够方便地借阅图书、续借图书、归还图书3)能够查询自己的基本资料、图书情况4)能够熟悉图书管理系统的使用。

读者进入系统工作的流程为:注册→查询→修改信息→借阅续借→图书归还→注销2.图书管理员他们对图书管理系统的要求有:1)能方便的对图书进行录入登记,注销陈旧的书籍。

2)能够方便地对新生进行登记,或注销已经毕业的学生信息(基本信息,借阅信息)。

3)能够随时发布一些诸如各学院学生借阅图书超期情况、馆内藏书情况、借情况等信息,以便各学院能够随时获知本院学生的一些借书信息。

图书管理员工作的流程为::注册→录入图书→录入新生→注销图书→注销学生→注销→修改个人信息→超期处理二、概念模型设计数据库需要表述的信息有以下几种:1.读者信息2.书籍信息3.管理员信息4.读者与书籍之间的关系(借阅关系E-R图)5.管理员与书籍之间的关系(管理员_书籍E-R图)6.管理员与学生之间的关系(管理员_学生 E-R图)三、逻辑设计从理论‘E/R模型’到理论‘关系模型’的整理转换,通过E/R模型到关系模型的转化,可以得到如下关系模式:借阅关系属性:工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注。

实验十一 图书管理系统数据库设计

实验十一  图书管理系统数据库设计

注销
图3-1
学生的操作流程
(2)管理员 管理员可完成书籍和学生的增加、删除和修改以及对学生借阅、续借、归还的确认,其 操作流程如图3-2 所示。 登录
书籍信息维护
学生信息维护
借阅图书确认
归还图书确认
注销
图3-2 2、概念模型设计
管理员操作流程
数据库需要表述的信息有以下几种: (1)图书信息 (2)学生信息 (3)管理员信息 (4)学生预定图书信息 (5)学生借阅还图书信息 说明: 1)书号是图书的键码,每本书有唯一的书号。一个学生可同时借阅多本书。一个管理员可 处理多个同学的借阅等事宜。 2)一般情况下,学生、管理员和图书之间的联系为1:1:n,借书关系Lend作为连接关系, 其键码为n端实体集的键码,即书号为借书关系的键码。这反映了如果还书时也把当初的借 书记录删除,则书号就能唯一识别一个元组。 如果在不删除借书记录的情况下,同一学生再次借同一本书,这时,学生、管理员和图 之间的联系变为m:p:n,于是,借书关系的键码为书号、学号和管理员号的组合。但这里有一 个隐含的信息, 即同一学生前后两次借同一本书所遇到的管理员不同, 而这种不同可能仅仅 是“ 日期”不同。因此,借书日期成了必不可少的成分,也就是说,在这种情况下,属性全集 才是借书关系的键码。 总之,借书关系的键码与图书管理模式有关,读者可按照自己的理解确定键码,并编写 相应的事务处理流程。其他关系也有类似之处。 3)要知道图书当前的状态,是在图书馆存放,还是被借阅等,需要在Book的模式中增加对 应项用以表示图书当前的状态。 比如我们增加State, 并且约定取值和状态的对应关系如下: 0:在图书馆中并且没有被预定 1:在图书馆中并且已被预定 2:被借出并且没有被预定 3:被借出并且已被预定 用E-R模型表达该模型的设计,画出E-R模型如下: 3、逻辑设计 通过E-R模型到关系模型的设计,请写出关系模式: (实体或属性的英文可以自取) 4、物理设计 为了提高在表中搜索元组的速度, 在实际实现的时候应该基于键码建立索引。 下面是各 表中建立索引的表项: (1)在书表中按书号建立索引 T-SQL语句: (2)在学生表中按学号建立索引 T-SQL语句: 5、用T-SQL实现设计 (1)建立数据库表 1) 建Book(图书信息) 表(同2) 时定义约束) T-SQL: 2) 建Student(学生信息)表(同4) 时定义约束) T-SQL:

数据库设计实验报告

数据库设计实验报告

数据库设计实验报告数据库设计课程实验报告学院:班级:完成⼈:姓名:学号:指导教师:数据库设计实验任务书⼀、课程实验题⽬:图书管理⼆、课程实验应解决的主要问题:(1)分析图书管理设计中包含的实体,实体属性,实体之间的关系(1)对实体中相应的数据项给出详细的数据字典描述(1)以powerDesigher为建模⼯具,对数据库进⾏逻辑设计(1)设计的关系模式需进⾏规范化处理,每个关系模式应能达到3NF(1)设计事务,涉及到检索和更新等(2)绘制事务图,使⽤路径指⽰ER模型⽀持的⽤户事务(3)根据逻辑设计原则(多样性),转化为相应数据表,并标明主键、外键(4)相应事务要求⽤SQL语⾔实现,并⽤到触发器、存储过程,视图等数据操作(5)应⽤⾃⼰熟悉的⾼级程序设计语⾔,实现系统主要功能三、任务发出⽇期:课程实验完成⽇期:指导教师对课程实验的评价成绩:指导教师签字:年⽉⽇⽬录1业务分析 (1)1.1原管理系统分析 (1)1.2所建系统分析 (1)1.3可⾏性分析 (1)1.3.1经济可⾏性分析 (1)1.3.2技术可⾏性分析 (2)1.3.3社会可⾏性分析 (2)2实体描述(属性,关系,参与类型) (2)2.1管理员管理E R图 (2)2.2读者借阅归还E R图 (3)3数据字典说明 (3)4事务设计 (4)4.1管理员模块 (4)4.2读者管理模块 (4)4.3图书信息管理模块 (5)4.4图书类别管理模块 (5)4.5图书借阅归还管理模块 (5)4.6读者留⾔管理模块 (5)5PowerDesigner建模 (5)6事务路径图或事务描述 (6)7映射为对应数据表 (7)7.1管理员数据表 (7)7.2读者数据表 (7)7.3图书数据表 (8)7.4图书类别数据表 (8)7.5借还书记录数据表 (9)7.6⽤户留⾔数据表 (9)8规范化检查和说明 (10)8.1规范化⽅法检查表结构 (10)8.2检查表是否⽀持⽤户事务 (10)8.3检查业务规则 (10)9S Q L操作 (10)9.1创建索引 (10)9.2创建视图 (12)9.3设计触发器 (13)9.4设计存储过程(例:读者注册信息) (14) 10实现界⾯ (15)10.1登录页⾯ (16)10.2管理员界⾯ (16)10.2.1 管理员主页⾯ (16)10.2.2图书类别 (16)10.2.3图书管理 (17)10.2.3.1 添加图书 (17)10.2.3.2 修改、删除图书 (18)10.2.3.3查看图书 (18)10.2.4借阅管理(借阅、归还、续借) (19) 10.2.5在线留⾔管理 (19)10.2.6管理员管理 (20)10.3读者界⾯ (20)10.3.1读者注册 (20)10.3.2读者主页⾯ (21)10.3.3读者分类查询 (38)10.3.4读者借阅图书 (21)10.3.5读者归还图书 (22)10.3.6读者续借图书 (23)11任务分⼯1.业务分析1.1原图书管理系统分析图书馆是获取信息重要途径之⼀,对图书馆的信息化管理将⼤⼤提⾼图书资源的利⽤和信息的交换速度。

图书管理系统数据库设计-

图书管理系统数据库设计-

图书管理系统设计报告用手工的方式进行图书管理信息处理工作量大,容易出错,缺乏系统、规范的信息管理手段。

为了满足图书馆管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,在工作人员具备一定的计算机操作能力的前提下,用图书管理系统软件以提高图书馆的管理效率。

现在准备建立的图书管理系统,要把图书馆的图书管理、读者管理、图书借阅管理等日常管理工作实行计算机统一管理,以提高工作效率和管理水平。

第一部分:需求分析根据图书管理系统的实际要求,结合该课程设计的特点与要求,现在确定该系统的数据需求如下:1 书籍的存储,主要包括书名,书的类型,作者,出版社,关键字,入库时间等一下信息。

2 书籍类型信息的存储,包括类型号,类型名,关键字等。

这些数据信息的存在是为了方便为书籍分类。

3 读者信息的存储,主要包括姓名,性别,读者类型号,读者的入库时间,读者所在的院系,联系方式,地址等信息。

4 读者的类型,主要包括类型号,类型名,可以借书的天数和本书,读者的存在时间等信息。

5 借阅信息,主要包括借阅号,读者编号,读者姓名,书籍编号,书籍名字,借出日期,归还日期等。

根据图书管理系统的实际要求,结合该课程设计的特点与要求,功能需求以分为下几个模块的需求:书籍管理部分:这一部分包括书籍类别管理和书籍信息管理两部分,其中书籍类别管理包括添加书籍类别、修改书籍类别等;书籍信息管理包括书籍信息的添加、书籍信息的修改、书籍信息的查询、书籍信息的删除等。

读者管理部分:这一部分包括读者类别管理和读者信息管理两部分。

其中读者类别管理包括添加读者类别、修改读者类别;读者信息管理包括添加读者信息、修改读者信息、删除读者信息、查询读者信息等。

借阅管理部分:这一部分包括借书信息管理和还书信息管理两部分。

其中,借书信息管理包括借书信息的添加、借书信息的修改、借书信息的查询等;还书信息管理部分包括还书信息的添加、还书信息的修改、还书信息的查询等。

统计管理:主要统计书籍的借阅频率和,和读者的借书和违规情况。

数据库实验报告-图书管理系统

数据库实验报告-图书管理系统

《数据库应用系统》实验报告院系:班级:学号:姓名:一、功能需求说明和分析本实验要求实现一个图书管理系统,系统功能需求说明如下:系统设置:参数、读者类型、图书类型、出版社、预约天数、管理员权限等的设置;系统管理:书籍资料、读者资料的管理和数据导入;基本操作:书籍借阅、续借、归还,新增书籍、读者,读者挂失、注销、退卡,书籍注销,丢失罚款;系统查询:书籍资料、借阅、归还等的查询,读者资料、超期未还、书籍注销的查询;统计分析:书籍、读者资料分类统计,书籍、读者借阅排行榜;罚款租金:可以进行罚款或租金的操作,并进行统计汇总;系统维护:备份、还原数据库,管理员登录密码修改。

针对上述需求说明,对该系统的需求进行进一步的分析如下:管理员权限:1.图书的录入,查询,修改和注销;2.读者信息的添加,修改,查询和注销;3.个人账号登录,查看个人信息,修改密码,退出登录;4.管理和授予读者借书权限;5.正常还书和违规还书。

读者权限:1.图书检索;2.登录,查看个人信息,查看借阅记录,退出登录;3.借书,还书;4.续借已借书籍,预约书籍;5.挂失和退卡注销。

书籍检索:1.读者可检索到自己想要的书籍的基本信息2.可以按照书籍排行榜查看书籍相关书籍二、需求分析数据流图(DFD)表达了数据和处理过程的关系,根据需求分析得到数据流图如下图所示。

数据字典(DD)是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。

因此,图书馆信息管理系统数据流程图中,数据信息和处理过程需要通过数据字典才能描述清楚。

在我们定义的图书馆信息管理系统数据字典中,主要对数据流程图中的数据结构、数据存储和处理过程进行说明。

1、数据结构反应了数据之间的组合关系,主要数据结构定义如下:1)数据结构名称:管理员信息含义说明:管理员信息反应了管理员的一些相关信息组成:编号+姓名+登录密码2)数据结构名称:读者信息含义说明:读者信息反应了读者的一些相关信息组成:卡号+姓名+性别+类别+单位3)数据结构名称:图书信息含义说明:图书信息反应了图书的一些相关信息组成:书号+书名+作者+分类+出版社+状态+入库日期+数量4)数据结构名称:借阅记录含义说明:借阅记录反应了每一本书的被借阅历史和每一位读者的借阅历史组成:书号+卡号+借出日期+归还日期2、数据存储是数据结构停留或者保存的地方,主要数据存储定义如下:1)数据存储名称:管理员信息表输入:管理员的工作编号输出:管理员的基本信息数据结构:编号+姓名+登录密码说明:编号是唯一的,且不能为空,作为主码2)数据存储名称:读者信息表输入:读者的借书卡卡号输出:读者的基本信息以及借阅记录数据结构:卡号+姓名+性别+类别+单位说明:卡号是唯一的,且不能为空,作为主码3)数据存储名称:图书信息表输入:图书的书号输出:该图书的状态(已借出/馆内阅读/在架上)和被借阅历史数据结构:书号+书名+作者+分类+出版社+状态+入库日期+数量说明:书号是唯一的,且不能为空,作为主码4)数据存储名称:借阅记录表输入:书籍的书号,或者读者的借书卡卡号输出:相应的借阅记录数据结构:书号+卡号+借出日期+归还日期说明:书号-卡号作为主码;在读者-书籍关系中,卡号为主码,书号为外码;在书籍读者关系中,书号为主码,卡号为外码3、处理过程的具体处理逻辑一般用判定表或者判定树来描述,在数据字典中只需要描述处理过程的说明性信心。

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

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

数据库课程设计图书管理系统报告数据库课程设计图书管理系统报告「篇一」一、课程设计目的掌握虚拟仪器的概念和系统组成,虚拟仪器系统的基本设计思想;认识虚拟仪器的软件开发工具LabVIEW及图形化编程语言;掌握虚拟仪器软件的设计方法,能够运用LabVIEW进行数据操作、结构控制、文件读写、信号处理、数学分析、波形分析等。

二、第一阶段设计1、第一题第一题要求建立一个二维数组,由于没有指定数组的具体数值,所以设计为让用户自行输入数组的元素,并生成一个新的'数组,再进行后续的操作。

数组长度是使用数组大小函数来获得,经过数组大小函数后,通过索引数组来的到二维数组的行数与列数,想乘后的到数组的长度,查找元素和替换元素则是直接用已有的函数即可实现。

2、第二题任意创建一个二维数组常量,并定义数组元素后用第一题的方法得到数组的长度,把数组和数组长度输入到重排数组维数函数中,即可得到重新排列后的一维数组。

而后让用户自己设计把最后多少个元素放置到数组前面,经过一维数组循环移位后即可实现功能。

3、第三题首先是创建了个数组输入控件,让用户自己输入一维数组的元素,利用一维数组排序函数即可实现升序排列,然后把升序排列的结果利用反转一维数组函数进行反转,即可得到降序排列的数组。

4、第四题首先建立了一个二维的数组常量,定义数组的元素后显示出来。

利用数组的最大值最小值函数得到数组的最大值最小值以及位置,由于位置是以数组形式表示的,则用数组索引把行数列数提取出来并显示。

但这个方法的问题在于,数组的最大值最小值函数并不能把数组中所有的最值的位置都输出出来,它只输出第一个找到的最值的位置。

5、第五题建立一个簇然后在簇里添加题目要求的内容后,把顺序设置好,接着按顺序把相应的输入控件捆绑到簇中。

6、第六题首先求阶乘要分为3种情况,一是等于零,而是大于零,还有就是小于零。

让用户输入n的值后,马上进行判断,如果等于零,则直接输出1,如果小于零则输出0(表示出错),如果大于零则进入循环进行运算。

图书管理系统数据库设计-MYSQL实现

图书管理系统数据库设计-MYSQL实现

图书管理系统数据库设计一、系统概述1、系统简介图书管理是每个图书馆都需要进行的工作。

一个设计良好的图书管理系统数据库能够给图书管理带来很大的便利。

2、需求分析图书管理系统的需求定义为:1.学生可以直接通过借阅终端来查阅书籍信息,同时也可以查阅自己的借阅信息。

2.当学生需要借阅书籍时,通过账号密码登陆借阅系统,借阅系统处理学生的借阅,同时修改图书馆保存的图书信息,修改被借阅的书籍是否还有剩余,同时更新学生个人的借阅信息。

3.学生借阅图书之前需要将自己的个人信息注册,登陆时对照学生信息。

4.学生直接归还图书,根据图书编码修改借阅信息5.管理员登陆管理系统后,可以修改图书信息,增加或者删除图书信息6.管理员可以注销学生信息。

通过需求定义,画出图书管理系统的数据流图:数据流图二、系统功能设计三、数据库设计方案图表1、系统E-R模型总体E-R图:管理员E-R图:给出设计的表名、结构以及表上设计的完整性约束。

student:book:book_sort:borrow:存储学生的借书信息return_table:存储学生的归还信息ticket:存储学生的罚单信息manager:3、设计索引给出在各表上建立的索引以及使用的语句。

student:1.为stu_id创建索引,升序排序sql:create index index_id on student(stu_id asc);2.为stu_name创建索引,并且降序排序sql:alter table student add index index_name(stu_name, desc);插入索引操作和结果如下所示:mysql> create index index_id on student(stu_id asc);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0mysql> alter table student add index index_name(stu_name desc);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0mysql>book:1.为book_id创建索引,升序排列sql:create index index_bid on book(book_id);2.为book_record创建索引,以便方便查询图书的登记日期信息,升序:sql:create index index_brecord on book(book_record);插入索引的操作和结果如下所示:mysql> create index index_bid on book(book_id);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0mysql> create index index_brecord on book(book_record);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0borrow:1.为stu_id和book_id创建多列索引:sql:create index index_sid_bid on borrow(stu_id asc, book_id asc);插入索引的操作和结果如下所示:mysql> create index index_sid_bid on borrow(stu_id asc, book_id asc);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0return_table:1.为stu_id和book_id创建多列索引:sql:create index index_sid_bid on return_table(stu_id asc, book_id asc);插入索引的操作和结果如下所示:mysql> create index index_sid_bid_r onreturn_table(stu_id asc, book_id asc);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0ticket:1. 为stu_id和book_id创建多列索引:sql:create index index_sid_bid on ticket(stu_id asc, book_id asc);插入索引的操作和结果如下所示:mysql> create index index_sid_bid on ticket(stu_id asc, book_id asc);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 0manager:1.为manager_id创建索引:sql:create index index_mid on manager(manager_id);插入索引的操作和结果如下所示:mysql> create index index_mid on manager(manager_id);Query OK, 0 rows affectedRecords: 0 Duplicates: 0 Warnings: 04、设计视图给出在各表上建立的视图以及使用的语句。

数据库—图书管理系统

数据库—图书管理系统

课程设计说明书题目:图书管理系统学院:计算机科学与工程学院专业班级:学号:学生姓名:指导老师:年月日课程设计执行计划书安徽理工大学课程设计成绩评定表目录1 绪论 (1)2 系统需求分析与设计 (2)2.1 用户需求分析 (2)2.1.1 用户需求 (2)2.1.2 系统功能需求 (2)2.1.3开发工具 (2)2.2 功能模块图及分模块功能描述 (3)2.3 数据库设计 (3)2.3.1 概念结构设计 (3)2.3.2 逻辑结构设计 (5)3数据库实施 (6)3.1建立数据库 (6)3.2录入数据 (7)4数据库的基本操作和运行结果 (9)5总结 (12)6参考文献 (13)1 绪论随着社会信息量的与日俱增,职场竞争的日趋激烈,越来越多的人更关注知识的积累、能力的培养。

作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。

在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。

对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件,对于日益扩大的图书馆,查找特定的书目总是借阅者或工作人员劳神费力,有时还没有结果。

因此往往是投入了大量的人力和财力却得不到高效的管理效率,为了缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书借阅信息管理效率的目的,采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。

本文以高校图书馆管理系统管理系统开发过程为背景,全文分为目录、系统需求分析与设计、数据库实施,以及数据库的基本操作和运行结果等全过程。

在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。

图书管理系统数据库设计方案

图书管理系统数据库设计方案

第一学时期毕业设计图书管理数据库
图书管理系统主要提供给用户一个直观的借阅平台,读者可以通过该系统查阅近期潮流的书籍信息,以及详细的图书介绍。

一.目标设计
1.图书管理系统简单功能介绍如下:
(1)对图书资源详细分类
(2)员工为读者提供新书入库
(3)为读者提供多种书籍搜索功能
(4)读者可以方便的借阅以及购买
(5)提供潮流书籍内容简介
(6)为读者提供一个有好的浏览界面
(7)对读者、员工、用户名,密码以及权限进行管理
二.系统设计
(1)图书管理系统的功能划分如下简图:
三详细数据库设计方案
图书表Book 用于增加图书信息
出版社表Publisher 存贮出版社信息
图书装订类型:Bind
图书类别表:Category 组要对图书进行分类,便于读者,员工进行搜索,查找
员工表:Employee 记录员工详细信息,便于管理员进行维护
员工状态表 State 管理员很好的对员工 出勤 表现
进行统计 员工销售表:SaleMaster 销售单头 及单未
员工销售表:SaleDetails 销售信息明细表。

数据库之图书管理系统实验报告

数据库之图书管理系统实验报告

《数据库技术》课程设计说明书设计题目:图书馆数据库系统 设计者:xxxxxxxxxxxxxxx指导教师:xx xxx完成时间:2011年12月31日目录引言 (3)编写目的 (3)背景 (3)任务理解 (4)课设目标 (4)系统基本功能模块 (4)书籍管理子系统 (5)读者管理子系统 (5)借阅管理子系统 (5)需求分析 (5)系统分析 (6)系统设计 (6)概念结构设计 (7)概念结构 (7)整体E-R图 (7)局部E-R图 (8)数据字典 (8)逻辑结构设计 (13)数据库的实施 (15)总体视图 (15)关系图截图 (16)数据载入 (16)结构查询 (19)表的查找 (21)更新表中记录 (22)插入表中记录 (23)删除 (24)创建视图 (25)创建触发器 (26)存储过程 (27)索引 (28)实验小结 (29)引言随着计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落。

学生对知识的可望有增无减,图书馆用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。

为了满足其管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,在工作人员具备一定的计算机操作能力的前提下,此图书管理系统软件力求提高其管理效率。

编写目的本文档的编写一方面是为了完善图书管理系统软件的开发途径和应用方法,以求在最短的时间高效的开发图书管理系统。

另一方面从另一个角度培养我们对SQL的运用,将学到的知识运用于实际生活中。

1)通过对应用问题的功能分析,掌握功能分解与模块设计的基本模式,建立总体设计的概念。

2)进一步提高建库、索引、查询、关联等数据库基本操作技术。

3)通过对功能模块的具体实现,得到面向对象的程序设计方法的初步训练。

4)通过分析、设计、实现的全过程训练,提高我们分析问题、解决问题的能力,培养我们的创新意识。

背景数据库技术和Internet的飞速发展,使它们已经成为现代信息技术的重要组成部分,使现在计算机信息系统和计算机运用系统的基础和核心,对与任何一个企业来说,数据是企业的重要资产,如何有效利用这些数据,对于企业发展起着及其重要的作用。

图书管理系统数据库

图书管理系统数据库
管理:管理日期,管理员编号,管理员姓名。
逻辑结果设计
这个E-R模型转换出的关系模式如下,其中主码用下划线标识:
学生 (学号,姓名,学院,专业,年级)
图书 (图书编号,图书名称,出版社名称,出版日期,作者,是否可借)
管理员 (管理员编号,管理员姓名)
借阅(学号,图书标号,图书名称,借阅日期,应归还日期),其中图书编号为引用 “图书”关系模式的外码; 学号为引用 “学生”关系模式的外码。管理(管理日期, 管理员编号, 管理员姓名),其中管理员编号为引用“管理员”关系模式的外码。
图书:用于描述课程的基本信息,用图书编号标识。
学生:用于描述学生的基本信息,用学号标识。
管理员:用于描述管理员的基本信息,用管理员编号标识。
由于一名学生可以借阅多本图书, 并且一本书可以在不同时间借给不同的学生。 因此, 学生与图书之间是多对多的联系。 又由于一本图书可以由多名管理员管理, 而且一名管理员可以管理多本图书。 因此, 管理员与图书之间也是多对多的联系。
一名学生可以同时借阅多本不同的图书。
一本书可以在不同的时间借给不同的学生。
一名学生不能在同一天对同一本书借阅多次。
一名管理员可以同时管理多本图书。
该系统的基本信息包括:
学生信息:姓名,学号,学院,专业,年级。
图书信息:图书名称,图书编号,出版社名称,出版日期,作者,是否可借。
管理员信息:管理员姓名,管理员编号。
《数据库原理与应用教程》实验报告
数据库分析与设计
------图书管理系统
一、需求说明
要实现一个简化的图书管理系统, 在此图书管理系统中只涉及学生信息、 借阅信息和管理者信息的管理。 此系统要求能够记住书籍的基本信息、 学生的信息和管理者的信息。该系统的业务要求为:

图书管理系统数据库实验报告

图书管理系统数据库实验报告

科技学院课程设计报告( 2013-- 2014年度第2学期)名称:数据库原理课程设计院系:信息工程系班级:学号:学生姓名:指导教师:郭丰娟王晓辉设计周数: 1成绩:日期:2014年5 月29日《数据库原理》课程设计任务书一、目的与要求1.这门课是为计算机科学与技术专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力而设置的实践环节。

通过这个环节,使学生拥有能够应用数据库原理对数据库系统进行设计的能力。

为后继课程和毕业设计打下良好基础。

2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。

3.通过一个学生并不陌生的完整系统的设计,可以培养学生对需求分析、方案设计、系统编码、界面设计和软件调试等各方面的能力。

是一门综合考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等涉及多课程的综合实验。

二、主要内容信息管理系统的设计与实现是针对一个实际中小型系统(见题目附录)进行的数据库设计,它需要管理的内容有实体以及实体之间的联系。

1. 首先要求完成需求的理解和实体的设计:a)设计实体的属性和码,以及该实体的实体完整性、用户自定义的完整性。

b)设计实体的之间的联系,包括联系的类型和联系的属性,即设计实体参照完整性。

最后画出完整的E-R图。

2.根据设计好的E-R图及关系数据库理论知识设计数据库模式:2.1 将E-R图转换为关系模式。

2.2 设计关系模式间的参照完整性。

2.3 用SQL语言实现数据库模式的设计。

3.实现信息管理系统所需的各种操作:3.1 用SQL语言实现信息的录入、删除和修改。

3.2 以视图的形式完成各类查询,包括单表、多表、单条件、多条件等。

4.权限的设计:4.1 授权操作;4.2 收回权限的操作。

5.界面的设计、加密的设计。

三、进度计划四、设计(实验)成果要求1.在DBMS(如SQL Server,DB2等)上完成完整的数据库的设计;2.使用可视化开发平台完成该系统,并要可以求正确的运行;3.完成实验报告。

图书管理系统详细设计实验报告

图书管理系统详细设计实验报告

图书管理系统详细设计实验报告1. 引言本文档是对图书管理系统进行详细设计的实验报告。

图书管理系统是一个用于图书馆或书店管理图书信息的软件系统,通过该系统可以方便地进行图书的借阅、归还、查询等操作。

本实验报告将详细介绍图书管理系统的设计理念、系统结构、模块设计等内容。

2. 设计理念在设计图书管理系统时,我们主要考虑了以下几个方面的要求。

首先,系统的操作界面应该简洁、直观,便于用户进行操作。

我们采用了现代化的UI设计风格,并进行了良好的用户体验测试,确保用户可以轻松掌握系统的操作方式。

其次,系统的性能应该良好,能够快速、准确地处理大量的图书信息。

我们采用了高效的数据库技术,并进行了性能优化,以确保系统的响应速度和稳定性。

最后,系统应该具备较高的安全性,保护图书信息不受未经授权的访问和恶意操作。

我们采用了安全认证和权限控制的机制,确保只有授权用户才能进行相关操作。

3. 系统结构图书管理系统的整体结构分为三层:表示层、业务逻辑层和数据访问层。

•表示层:负责与用户进行交互,接收用户的输入,并展示系统的输出结果。

通过一个用户友好的界面,用户可以执行图书的借阅、归还、查询等操作。

•业务逻辑层:负责处理用户的请求,进行相应的数据处理和业务逻辑判断。

在这一层中,我们设计了借书管理、还书管理、图书查询和图书推荐等模块。

•数据访问层:负责与数据库进行交互,进行数据的存储和读取操作。

我们采用了关系型数据库,通过SQL语句实现对图书信息进行管理。

4. 模块设计4.1 借书管理模块该模块提供了图书的借阅功能。

用户可以通过输入图书的信息进行借书操作,系统会进行相应的检查并更新图书的状态。

具体设计如下:1.用户界面:提供用户输入图书信息的界面,并显示借阅结果。

2.输入检查:对用户输入的图书信息进行格式的检查,例如判断图书是否存在、是否已被借阅等。

3.图书状态更新:将图书的状态标记为已借出,并记录借书的时间和用户信息。

4.2 还书管理模块该模块提供了图书的归还功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、实验目的:通过小型信息系统设计和开发,使我们了解数据库设计在软件工程中的地位,掌握数据库设计的方法,并把数据库运用于编程,巩固我们在课堂上学习到的知识,并培养我们作为未来软件开发,测试者应该具有的合作精神,主动学习运用新知识。

针对特定应用设计系统功能模块结构和数据库表结构,达到将《数据库系统原理》课程的理论知识综合运用的目的。

2、实验场地及仪器、设备和材料:场地:H123实验室设备:计算机软件:WORD、VISIO、SQL-SERVER 20003、实验思路(实验内容、数据处理方法及实验步骤等):一、实验内容:1)用户需求分析1.1总体需求描述1.2用户总体业务构造1.3其他需求1.4系统功能设想1.5业务流程分析1.5.1图书借阅信息1.5.2书籍信息管理1.5.3读者信息管理1.1总体需求描述图书管理系统涉及读者信息管理、借阅信息管理、图书信息管理等多方面的信息管理,系统的使用对象为图书管理员和读者。

他们在使用系统时,各拥有不同的权限,以完成各自需要的工作。

下面对图书管理系统中主要的业务流程进行简要分析:在图书管理系统中,图书管理员要为每个读者建立借阅账户,记录读者的个人信息和图书借阅信息。

读者个人账户建立成功后,给读者发借阅卡,可以通过图书管理员借阅、归还图书,也可以通过相应的终端查询个人的借阅信息,检索图书。

读者借阅图书时,先输入借阅证卡号、密码,验证借阅证的有效性及是否可续借,无效则向读者提示原因,如“卡号不对”、“密码不对”、“已借满,不能再借”等;有效则显示读者的基本信息,例如读者的个人资料、已经借阅的图书信息等;读者通过图书管理员向系统提出借阅请求,管理员操作管理终端,登记读者新借阅图书的相关信息。

相应地,读者归还图书时,也需验证借阅卡号、密码等信息,验证借阅证的有效性,若不对,系统给出相关的提示;通过系统验证后,显示读者基本信息及图书借阅信息;读者向图书管理员递交归还的图书,管理员验证无误后,删除读者该书的借阅信息;若读者超期归还,则先向管理员递交图书滞纳费用,归还图书;另外,图书馆图书资料变更,如新购进图书或图书被损毁不能再使用时,图书管理员要相应的将图书信息入库或注销;同理,若有新增读者帐号或需要注销读者帐号的,图书管理员应通过系统管理终端进行记录。

1.2用户总体业务构造一个典型的图书管理系统应包含图书信息管理、借阅信息管理、读者信息管理三部分数据管理,其中图书管理员可实现如下操作: (1)增加、删除图书; (2)增加、删除读者; (3)借出、归还图书记录; (4)查询读者信息、图书信息; 普通读者可以实现如下操作:(1)修改个人信息(如登陆密码,或其他个人信息等) (2)查询个人借阅信息和检索图书;1.3其他需求● 师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还还需要罚款;●每本书的馆藏数量不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。

1.4系统功能设想图1 图书管理系统整体功能图示图书管理系统基础数据和辅助管理用户登录及其验证登陆及退出系统图书借阅管理 读者信息管理 图书信息管理借书还书添加读者 修改读者 图书修改注销图书超期 丢失 正常删除读者 查询读者 新书入库1.5业务流程分析业务处理描述业务处理单位文件存档1.5.1图书借阅信息1.5.2书籍信息管理1.5.3读者信息管理书籍信息添加/修改图书管理员书籍信息书籍信息书籍查询错误信息读者所借图书图书管理员所需图书2)系统概念结构设计2.1实体2.2系统局部E-R 图 2.3系统全局E-R 图上述数据流图和数据字典共同构成了对用户需求的表达,它们是系统分析员(数据库管理员)在需求调查过程中和用户反复交互得到的。

概念设计就是通过对需求分析阶段得到的信息需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型,主要使用E-R 图。

2.1实体由前面分析得到的数据流图和数据字典,抽象出来的实体主要有3个:图书管理员、读者、图书、出版社(系统管理员先暂时不计)。

实体和属性的定义:书库图书信息,包括数据项有:图书编号、书名、书号、类别、出版社、作者、ISBN 、印张、字数、版次、印数、定价、开本、是否在库、是否损坏、是否遗失、入库时间、图书介绍读者信息,包括数据项有:学生编号、学号、姓名、性别、系别、班级、级别、已借图书、照片借书信息,包括数据项有:图书编号、学生编号、是否归还、书名、姓名、学号、书号、系别、班级、已借图书、出版社、作者、借阅日期、图书类别、是否续借出版社信息,包括数据项有:供货商序号、供货商、城市、地址、电话、传真、邮政编码、EMAIL 、联系人、首次合作时间用户信息,包括数据项有:用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片罚款信息,包括数据项有:流水号、罚款原因、罚款金额、日期。

过期图书信息,包括数据项有:图书编号、书名、书号、学生序号、学生姓名、系别、班级、过期时间。

师生可借阅图书,借阅图书有期限限制和数量限制,逾期不还需要罚款;每本书的馆藏数量借书读者图书管理员删除读者读者资料不同,图书管理员需对这些书进行管理,书籍借出和归还时须注意是否有损毁。

2.2系统局部E-R 图ER 模型的“联系”用于刻画实体之间的关联。

一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。

若有联系,进一步确定是1:N ,M:N ,还是1:1等。

还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,等等。

联系定义如图3-1所示。

解释如下:一个借阅者(用户)只能具有一种身份,而一种身份可被多个借阅者所具有; 一本图书只能属于一种图书类别(类别),而一种图书类别可以包含多本图书; 一个用户可以借阅多本不同的书,而一本书也可以被多个不同的用户所借阅。

2.2.1 读者局部E-R 图2.2.2图书局部E-R 图读者管理管理员 借阅管理图书nmnnmm读者读者编号姓名年龄联系电话地址性别已借书总数..2.2.3还书局部E-R 图2.2.4还书局部E-R 图2.3系统全局E-R 图还书读者书籍读者姓名读者性别 读者编号 读者编号还书编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N借阅读者书籍读者姓名读者性别 读者编号 读者编号借阅编号图书状态 单价作者图书数量序列编号出版日期图书编号图书名称1N图书图书编号图书名称 作者 出版社出版日期图书类型 已借数量状态入库日期图书简介页数价格译者序列编号3)数据库逻辑结构设计3.1E-R图到关系模式的转换3.2关系模式的规范及调整3.2.1关系模式3.2.2数据约束分析3.3各个数据表的表结构设计3.1E-R图到关系模式的转换读者与图书之间的关系式多对多的联系,因此,将读者与图书以及借书联系分别设计成如下的关系模式:图书(图书编号,图书名称,作者,译者,出版社,出版日期,入库日期,图书类型,书数,图书状态,页数,价格,附件,图书简介)读者(读者编号,读者类型,姓名,有效证件,证件号码,性别,职业,联系电话,E-mail,家庭住址,备注)因为图书与读者间的关系借书与还书,并且是多对多的关系,所以抽出借阅归还的关系。

借书(读者编号,读者姓名,性别,有效证件,有效证件号码,读者类别,联系电话,已借数量,借书总量,图书编号,图书名称,作者,图书类型,价格,出版时间,出版社,借出次数,附件)出版社和图书之间是一对一的关系所以作为单独的关系。

用户与图书的关系之间是一个管理员可以操作多本图书,一本图书可以被多个管理员管理,将用户作为一个单独的关系进行处理,均如下。

出版社(出版社编号,出版社名称)用户(用户编号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片)对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款。

罚款(流水号、罚款原因、罚款金额、日期)过期图书(图书编号、书名、书号、读者序号、姓名、职务、过期时间)3.2关系模式的规范及调整3.2.1关系模式对于读者与图书之间图书超期罚款关系以及过期图书处理关系,过期需要罚款,损坏图书也需要罚款的调整:罚款(流水号、罚款原因、罚款金额、日期,罚款图书,罚款人,操作人)罚款类型(类型编号、类型名称、罚款条目)3.2.2数据约束分析(1)用户访问权限:任何用户都不能访问其他用户的密码。

(2)任何用户只可查自己的历史操作情况,不可访问到其他用户的业务情况。

(3)借书数量和借书总数并且各自的数量都不能为空值。

(4)图书编码规则:以字母B开头再加上8位数字。

(5)读者编码规则:以字母R开头加上8位数字,其中前4位数字由读者进入学校的时间年份顺序生成,后4位则是按流水号一次增大。

(6)用户编码规则:以字母M开头再加上8位数字。

其中前4位数字由用户的时间年份顺序生成,后4位则是按流水号一次增大。

(7)出版社编码规则:以字母P开头再加上8位数字。

其中前4位数字由学校采购图书的时间年份顺序生成,后4位则是按流水号一次增大。

3.3各个数据表的表结构设计经由E-R模型得到关系模型并且得到适当调整后,我们可以结合在需求表述中数据字典包含的数据项信息,得到数据库的表结构。

具体设计各个数据表的表结构,包括表名,表中各列的字段数据类型、数据长度和表的主键和外码:还要考虑应该建立那些索引以及索引的类型。

需要注意的是,考虑到系统的统一,兼顾如数据库管理员和后续软件开发中对数据库管理以及编程引用的便利,表明和字段名的命名以具有意义的英文名称为主或以其缩写字母构成:同时要为各个表名和字段名做出完整的中文文档说明。

如下表3.3.1~3.3.12给出了数据库中各个数据表的表结构。

表3.3.1 数据库中表清单数据库表名关系模式名称备注User 用户(图书管理员)用户信息表ReaderType 读者类型读者类型信息表Reader 读者读者信息表PaperType 有效证件类型证件类型信息表BookType 图书类别图书类别信息表BookConcern 出版社出版社信息表Book 图书图书信息表GiveInfo 图书借阅归还借阅归还信息表Amerce 罚款罚款信息表AmerceType 罚款项罚款类型设置表表3.3.2 用户信息表User字段信息列表字段名称含义属性类型长度备注UserID 用户号varchar 10 主键,也可以作为登陆标识UserPwd 用户密码varchar 10 Not nullAuthority 权限varchar 10 Not null表3.3.3 读者类型信息表ReaderType字段信息列表字段名称含义属性类型长度备注ID 类型编号int 4 主码ReaderType 类型名称varchar 10 Not null BorrowBookNum 借书数量int 4 Not null表3.3.4 读者信息表Reader字段信息列表字段名称含义属性类型长度备注ReaderID 读者编号varchar 10 主码ReaderName 姓名varchar 10 Not nullReaderSex 性别varchar 2 男/女ReaderBirth 出生年月Datetime 8ReaderTel 联系电话varchar 13 Not nullReaderAddr 地址varchar 100 联系地址ReaderStatus 状态varchar 4 表示在校、毕业或者转学ReaderTypeID 读者类型int 4 所属类型编号,外码—>ReaderType.IDBorrowedCount 已借次数int 4 Not nullPaperType 证件类型varchar 4 证件类型名称,外码—>PaperType.PaperNamePaperNum 证件号码varchar 20 证件类型编号,外码—>PaperType.PaperIDReaderWork 职业varchar 20 学生、教授,副教授等[E-mail] 电子邮箱varchar 30Remark 备注varchar 100BorrowedSum 已借书数int 4 Not null InDate 登记日期int 8 Not null表3.3.5 证件类型信息表PaperType字段信息列表字段名称含义属性类型长度备注PaperID 证件编号varchar 4PaperName 证件名称varchar 10 Not null 表3.3.6 图书类型信息表BookType 字段信息列表 字段名称 含义属性 类型 长度 备注 TID 图书类型 varchar 4 主码 TType类型名称varchar20文艺、理工等Not null 表3.3.7 出版社信息表BookConcern 字段信息列表字段名称 含义属性 类型 长度备注 CID 出版社编号varchar 4 主码 CName出版社名称varchar 20 Not null 表3.3.8 图书信息表Book 字段信息列表表3.3.9 图书借阅信息表GiveInfo 字段信息列表字段名称 含义属性 类型 长度 备注 BookID 图书编号 varchar 10 主码 ReaderID 读者编号 varchar 10 主码 GiveTime 还书时间 datetime 8 Not null IsAddTime 续借时间 bit 1 Not null ReturnTime 还书时间 datetime 8 Not null Amerce 罚款 money 8 Not null GiveAccessories 归还序列 varchar 2 Not null IsReturnTime 实际归还时间 datetime 8 Not null UserID操作人varchar10Not null表3.3.10 图罚款信息表Amerce 字段信息列表字段名称 含义属性 类型 长度 备注 AmerceID 罚款流水号 varchar 10 主码 Amerce 罚款金额 varchar 8 主码 ADate 罚款时间 datetime 8 Not null ABookID 相关图书 Amemo 10 Not null AReader 相关读者 Amemo 10 Not null AUserID操作人员Amemo10Not null字段名称 含义属性 类型 长度 备注 BookID 图书编号 varchar 10 主码 BookName 图书名称 varchar 20WritterName 作者 varchar 10 默认:未知 BookConcern 出版社编号 varchar 4 Not nullPublishDate 出版日期 datetime 8 BookType 图书类型 varchar 4 LentCount借书次数 int 4 默认:0 Status 状态 varchar 4 结出、在馆等 默认:在馆 InDate 入馆时间 datetime 8 当天 BookView 图书简介 text 16 默认:无 PageCount 页数 int 4 默认:0 Accessories 序列号 varchar 20 Not null Interpret 译者 varchar 20 默认:无 Price价格money8默认:0Areason 罚款原因varchar 10 Not nullAmemo 备注Amemo 50表3.3.10 图罚款信息表Amerce字段信息列表字段名称含义属性类型长度备注ATypeID 罚款类型号varchar 10 主码ATName 罚款名称varchar 10 Not nullATList 罚款条目text 16 Not null4)数据库的物理设计4.1存储介质的选择4.2数据库的存储结构设计4.2.1数据存储路径4.3各个数据表(视图)的建立4.4选择存取的方法4.5数据库服务器的性能优化4.1存储介质的选择RAID(独立磁盘冗余阵列)是由多个磁盘驱动(一个阵列)组成的磁盘系统,可以提供更高性能、可靠性、存储容量和更低的成本。

相关文档
最新文档