数据库课程设计实验报告

上传人:jun****875 文档编号:23623105 上传时间:2021-06-10 格式:DOC 页数:18 大小:249.41KB
收藏 版权申诉 举报 下载
数据库课程设计实验报告_第1页
第1页 / 共18页
数据库课程设计实验报告_第2页
第2页 / 共18页
数据库课程设计实验报告_第3页
第3页 / 共18页
资源描述:

《数据库课程设计实验报告》由会员分享,可在线阅读,更多相关《数据库课程设计实验报告(18页珍藏版)》请在装配图网上搜索。

1、课程设计报告课程设计题目:图书管理系统数据库设计 专 业:网络工程班 级:2 班姓 名:程鹏飞学 号: 1021130206指导教师: 游胜玉 2011 年11 月 29 日目 录1需求分析11.1需求分析过程11.2数据字典22概念模式设计32.1实体32.2 局部视图32.3视图集成43逻辑模式设计63.1将E-R图转化为关系模式63.2数据模型的优化64检验是否满足用户需求84.1调查用户需求85其它数据库对象(物理数据库设计)的考虑95.1建表95.2合法用户名字、权限、角色105.3视图105.4触发器115.5索引11图书管理系统1需求分析1.1需求分析过程(1)流程读者到图书借阅

2、处查询图书,看看是否有满足读者要求的图书。如果有满足读者要求的图书,查看该图书是否在馆,如果在馆,则图书管理员在系统记录读者信息并记录借出图书信息,如果不在馆,通知读者。如果读者要求的图书无法提供,则通知读者无法满足。(2)功能:实现图书的查询,借入和归还功能,而且能保存记录。(3)流程图:读者借阅图书判断图书是否在馆图书管理员管理所借图书借阅读者借阅图书,系统查询图书是否在馆。图书已借出,显示已借出;未借出显示下一步,图书管理员管理图书,登记读者信息,借出图书。1.2数据字典:(1)数据项: 表1.1数据项名 含义说明 数据类型 长度 与其他数据项的逻辑关系读者编号 读者相关信息 整 型 1

3、0 决定了要借阅的图书读者姓名 读者相关信息 字符型 6读者性别 读者相关信息 字符型 2联系电话 读者相关信息 整 型 7所在系 读者相关信息 字符型 10书 名 图书相关信息 字符型 20作 者 图书相关信息 字符型 6出版社 图书相关信息 字符型 20管理员工作号 管理员相关信息 整 型 10 管理图书的借出和归还管理员姓名 管理员相关信息 字符型 6管理员性别 管理员相关信息 字符型 2借书日期 借书相关信息 整 型 10还书日期 借书相关信息 整 型 10(2)数据结构: 表1.2数据结构名 含义说明 组成图书信息表 定义了图书的相关信息 ISBN,书名,作者,出版社,出版日期,简介

4、读者信息表 定义了读者有关信息 读者编号,姓名,性别,联系电话,系别 管理员信息表 定义了管理员有关信息 工作号,姓名,性别,电话,工资借阅关系表 定义了借阅图书的有关信息 工作号,ISBN,读者编号,借书日期,还书日期,是否续借管理员书籍表 定义了管理员与书籍的有关信息 工作号,ISBN,添加时间,是否在馆管理员读者表 定义了管理员与学生的有关信息 工作号,读者编号,借还确认,违章状况,累计借书(3)数据流:表1.3数据流名 来源 去向读者信息 读者 图书管理员的管理处图书信息 图书 图书管理员的管理处借阅信息 借阅图书 图书管理员的管理处(4)数据存储:表1.4数据存储名 含义说明 组成读

5、者信息 存储了读者的相关信息 读者编号,姓名,性别,联系电话,系别图书信息 存储了图书的相关信息 ISBN,书名,作者,出版社,出版日期,简介借阅信息 存储了借阅图书的有关信息 工作号,ISBN,读者编号,借书日期,还书日期,是否续借(5)处理过程:表1.5处理过程名 含义说明 输入 输出借书过程 查看图书是否被借出 图书信息 借阅信息还书过程 查看借阅图书的信息 读者信息 图书信息2概念模式设计2.1实体:读者信息,图书信息,图书管理员信息2.2局部视图:图 书读 者借 阅编号姓名性别所在系违章数累计借书还书日期借书日期书名出版社出版日期ISBN简介作者nn(1) 读者借阅图书图2-1借阅关

6、系E-R图事务规则:一个读者可以借阅多本图书(1:n) 一本图书可以被一个读者借阅(1:n)(2)管理员管理读者1n图2-2管理员_读者关系E-R图事务规则:一个图书管理员可以管理多个读者信息(1:n) 一个读者信息只能被一个图书管理员管理(1:1)(3)管理员管理图书 nn工作号图 书管理员管 理姓名性别工资电话借书是否在馆添加时间书名出版社出版日期ISBN简介作者图2-3管理员_书籍关系E-R图事务规则:一本图书可以被多个图书管理员管理(1:n) 一个图书管理员可以管理多本图书(1:n)2.3视图集成所有局部ER模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要

7、支持所有局部ER模式,而且必须合理地表示一个完整、一致的数据库概念结构。1)确定公共实体类型为了给多个局部ER模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。在这一步中我们仅根据实体类型名和键来认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。2)局部ER模式的合并合并的原则是:首先进行两两合并;先和合并那些现实世界中有联系的局部结构;合并从公共实体类型开始,最后再加入独立的局部结构。3)消除冲突冲突分为三类:属性冲突、结构冲突、命名冲突。设计全局ER模式的目的不在于把若干局部ER模式形式上合并为一个ER模式

8、,而在于消除冲突,使之成为能够被所有用户共同理解和接受的同一的概念模型。4)全局ER模式的优化在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。综上所述,“图书管理系统”的全局ER模式如下图所示。 图2.4系统全局ER图图2-4系统全局ER图3逻辑模式设计3.1将E-R图转化为关系模式由于概念设计的结果是ER图,DBMS一般采用关系模型,因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关

9、系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。将图2-4总体概念结构E-R图转化成关系模型。1、读者(读者编号,读者姓名,读者性别,联系电话,所在系,违章状况,累计借书) 2、书籍(ISBN,书名,作者,出版社,出版日期,简介)3、管理员(工作号,姓名,性别,电话,工资)4、借阅(读者编号,ISBN,是否续借,借书日期,还书日期)5、管理员_书籍(工作号,ISBN,添加时间,是否在馆)6、管理员_读者(工作号,读者编号,确认借还)3.2数据模型的优化将转化的关系模式进行优化,最终达到第三范式。优化后的关系模式如下:1、读者(

10、读者编号,读者姓名,读者性别,联系电话,所在系,违章状况,累计借书) 2、书籍(ISBN,书名,作者,出版社,出版日期,简介)3、管理员(工作号,姓名,性别,电话,工资)4、借阅(读者学号,ISBN,是否续借,借书日期,还书日期)5、管理员_书籍(工作号,ISBN,添加时间,是否在馆)6、管理员_读者(工作号,读者编号,确认借还)表3.1 图书信息表BOOK字段名称 数据类型 长度 约束 属性数据类型长度约束描述ISBN char 20 NOT NULL 主属性书名 char 50 NOT NULL 非主属性作者 char 20 NOT NULL 非主属性出版社 char 50 非主属性出版日

11、期 date 非主属性简介 char 200 非主属性表3.2 读者信息表STUDENT字段名称 数据类型 长度 约束 属性数据类型长度约束描述读者编号 char 20 NOT NULL 主属性读者姓名 char 10 NOT NULL 非主属性读者性别 char 2 NOT NULL 非主属性联系电话 char 10 非主属性所在系 char 20 NOT NULL 非主属性违章状况 char 2 非主属性累计借书 int 非主属性表3.3 管理员信息表MANAGER字段名称 数据类型 长度 约束 属性数据类型长度约束描述工作号 char 10 NOT NULL 主属性姓名 char 10

12、NOT NULL 非主属性性别 char 2 非主属性电话 char 15 非主属性 工资 char 30 非主属性字段名称 数据类型 长度 约束 属性工作号 char 12 NOT NULL 外码ISBN char 20 NOT NULL 外码读者编号 char 20 NOT NULL 非主属性借书日期 date NOT NULL 非主属性还书日期 date NOT NULL 非主属性是否续借 char 4 NOT NULL 非主属性表3.4 借阅关系表R-B 表3.5 管理员_书籍表M-B字段名称 数据类型 长度 约束 属性工作号 char 12 NOT NULL 外码ISBN char

13、20 NOT NULL 外码添加时间 data 非主属性是否在馆 char 14 非主属性表3.6 管理员_学生表M-S字段名称 数据类型 长度 约束 属性工作号 char 12 NOT NULL 外码读者学号 char 20 NOT NULL 外码借还确认 char 4 NOT NULL 非主属性4检验是否满足用户需求4.1调查用户需求读者需求(1) 借阅功能:能够方便地借阅图书、续借图书、归还图书(2) 查询功能:1)按图书编号查找图书2)按书籍名称查找图书3)按书籍作者查找图书4)能够按照自己的图书证编号查询自己的状态信息图书管理员需求(1)读者注册功能:能够对新的读者进行登记,或注销读

14、者的信息信息。(2)图书录入功能:能够将新到的图书信息输入到系统的图书信息库中。5其它数据库对象(物理数据库设计)的考虑5.1建表(1) 图书信息表BOOK Create Table BOOK ( ISBN char(20) Primary Key Not Null, 书名 char(50) Not Null, 作者 char(20) Not Null, 出版社 char(50), 出版日期 date( ), 简介 char(300) );(2)读者信息表STUDENTCreate Table STUDENT ( 读者编号 char(20) Primary Key Not Null, 读者姓名

15、 char(10) Not Null, 读者性别 char(2) Not Null, 联系电话 char(10), 所在系char(20) Not Null, 违章状况 char(2), 借书累计 int( );(3) 管理员信息表MANAGER Create Table MANAGER ( 工作号 char(12) Primary Key Not Null, 姓名 char(20) Not Null, 性别 char(2) Not Null, 电话 char(12), 工资 char(12) );(4)借阅关系表R-BCreate Table R-B ( 工作号 char(12) Not N

16、ull, ISBN char(20) Not Null, 读者编号 char(20) Not Null, 借书日期 date( ) Not Null, 还书日期 date( ) Not Null, 是否续借 char(4) Not Null,Primary Key(ISBN,读者编号),Foreign Key(ISBN)References BOOK(ISBN),Foreign Key(读者编号)References STUDENT(读者编号);(5)管理员_书籍表M-BCreate Table M-B ( 工作号 char(12) Not Null, ISBN char(20) Not Nu

17、ll, 添加时间 date(), 是否在馆 char(14),Primary Key(工作号,ISBN),Foreign Key(工作号)References MANAGER(工作号),Foreign Key(ISBN)References BOOK(ISBN);(6)管理员_学生表M-SCreate Table M-S ( 工作号 char(12) Not Null, 读者编号 char(20) Not Null, 确认归还 char(4) Not Null,Primary Key(工作号, 读者编号),Foreign Key(工作号)References MANAGER(工作号),Fore

18、ign Key(读者编号)References STUDENT(读者编号);插入读者信息insert into STUDENT(读者编号,读者姓名,读者性别,读者学号,所在系,联系电话,违章状况,累计借书)values(X20110101,程鹏飞,男,021130206,网络工程,18770077237,2,6)insert into STUDENT(读者编号,读者姓名,读者性别,读者学号,所在系,联系电话,违章状况,累计借书)values(X20110102,赫中翔,男,021130132,网络工程,18770057235,0,5)插入管理员信息insert into MANAGER(工作号

19、,姓名,性别,电话,工资)values(001,王雷,男, 3088022, 1600)insert into MANAGER(工作号,姓名,性别,电话,工资)values(002, 大飞,男,3320445, 1200)插入图书信息insert into BOOK( 书名, 作者 ,出版社 ,出版日期,简介 )values(大学英语,董亚兰,上海外语出版社,2004-10-03,大学重要学习课程)insert into BOOK(书名, 作者 ,出版社 , 出版日期,简介 )values(数据库原理,陈志治,人民邮电出版社,2008-10-03,工程技术讲解)insert into BOOK

20、(书号 ,书名, 作者 ,出版社 ,价格 , 出版日期,简介 )values(微观经济学,李小刚,上海大学出版社,2010-10-01,经济政治类讲解)5.2合法用户名字、权限、角色(1) 将图书信息表的查询权限授给读者S1Grant SelectON Table BookTO S1(2)将借阅关系表R-B,管理员_书籍表M-B,管理员_学生表M-S的查询和修改的权限给管理员U1Grant Update,SelectON Table R-B,M-B,M-STO U15.3视图建图(1)在图书信息表上创建BookviewCreat view Bookview(IBSN,书名,作者,出版社,出版日

21、期,简介)as select IBSN,书名,作者,出版社,出版日期,简介from BOOK(2)在读者信息表上创建StudentviewCreat view Studentview(读者编号,读者姓名,读者性别,联系电话,所在系,违章状况,累计借书)asselect 读者编号,读者姓名,读者性别,联系电话,所在系,违章状况,累计借书from STUDENT(3)在管理员信息表上创建ManagerviewCreat view Managerview(工作号,姓名,性别,电话,工资)asselect 工作号,姓名,性别,电话,工资from MANAGER(4)在借阅关系表上创建表R-BviewC

22、reat view R-Bview(工作号,ISBN,读者编号,借书日期,还书日期,是否续借)asselect 工作号,ISBN,读者编号,借书日期,还书日期,是否续借from R-B(5)在性别为男的管理员信息表上建立工资视图ManagerWageCreate view ManagerWageAsSelect 姓名,性别,工资From managerWhere 性别 =男;5.4触发器建立一个如果管理员的工资不足700,自动改为700元的触发器insert_or update_wageCreate trigger insert_or update_wageBefore insert or u

23、pdate on managerFor each rowAs beginIf (new. Professinal=管理员) and (new.工资700) then New.工资=700;End if;End5.5索引在图书信息表BOOK上建立唯一索引D-BOOKNAMECreate unique index D-BOOKNAME ON BOOK;在图书管理员表MANAGER上建立唯一索引M-MANAGERCreate unique index M-MANAGER ON MANAGER;实验总结:通过此次实验,加深我对数据库基本原理和应用的理解。逐步熟悉了包括数据库和数据表的建立,查询,统计,视图管理,存储过程和触发器的管理,用户管理、约束和默认管理、数据库备份和还原等。通过建立思想,画出E-R图,表明个成员间的关系。使得程序逐渐完善。但是自身尚未能把SQL与VB很好的结合,使得程序在实用上有很大的差距,需要进一步加强。 致 谢非常感谢游胜玉老师在本学期数据库课程中对我们无私的教育和在本次实验中对我们耐心的教导。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!