参考图书综合管理系统数据库设计.doc
《参考图书综合管理系统数据库设计.doc》由会员分享,可在线阅读,更多相关《参考图书综合管理系统数据库设计.doc(15页珍藏版)》请在咨信网上搜索。
图书管理系统数据库设计【仅供参考】 1、摘要: 一个简单图书管理系统包含图书馆内书籍信息、学校在校学生信息和学生借阅信息。此系统功效分为面向学生和面向管理员两部分,其中学生能够进行借阅、续借、归还和查询书籍等操作,管理员能够完成书籍和学生增加,删除和修改和对学生,借阅、续借、归还确实定。 2、需求分析 针对通常图书管理信息系统需求,经过对图书管理工作过程内容和数据步骤分析,设计以下面所表示数据项: ? 读者信息 属性:读者学号,读者姓名,读者性别,联络电话,所在系,生效日期,失效日期,违章情况,累计借书,备注 主键:读者学号 ? 书籍信息 属性:ISBN,书名,作者,出版社,出版日期,介绍,备注 主键:ISBN ? 管理员信息 属性:工作号,姓名,性别,电话,家庭住址,备注 主键:工作号 2.1 数据步骤 经过对系统调查和可行性分析,画出系统数据步骤图: 2.1.1 读者 学生对图书管理系统要求有: ? 能按多种方法(比如书名、编号、作者)查询图书馆藏书情况。 ? 能够方便地借阅图书、续借图书、归还图书 ? 能够查询自己基础资料、图书情况 ? 能够熟悉图书管理系统使用。 读者进入系统工作步骤图为: 注册 查询 修改信息 借阅续借 图书 归还 注销 2.1.2 图书管理员 她们对图书管理系统要求有: 1. 能方便对图书进行录入登记,注销陈旧书籍。 2. 能够方便地对新生进行登记,或注销已经毕业学生信息(基础信息,借阅信息)。 3. 能够随时公布部分诸如各学院学生借阅图书超期情况、馆内藏书情况、借情况等信息,方便各学院能够随时获知本院学生部分借书信息。 图书管理职员作步骤图为: 注册 录入图书 录入新生 注销图书 注销学生 注销 修改个人信息 超期处理 3、概念模型设计 数据库需要表述信息有以下多个: (1)读者信息 (2)书籍信息 (3)管理员信息 (4)读者和书籍之间关系(借阅关系E-R图) (5)管理员和书籍之间关系(管理员_书籍E-R图) (6)管理员和学生之间关系(管理员_学生 E-R图) 3.1管理员和读者之间关系 3.3管理员和书刊之间关系 3.3读者和书籍之间关系(借阅三元关系) 4、逻辑设计 从理论‘E/R模型’到理论‘关系模型’整理转换,经过E/R模型到关系模型转化,能够得到以下关系模式: 借阅关系 属性:工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注。 主键:工作号,读者学号,ISBN 管理员_书籍关系 属性:工作号,ISBN,添加时间,是否在馆 主键:工作号,ISBN 管理员_学生关系 属性:工作号,读者学号,确定借还 主键:工作号,读者学号 5、数据库逻辑结构 5.1图书信息表 [Page] 字段名称数据类型是否可为空 ISBN(key)varchar(20)否 书名varchar(50)否 作者varchar(12)否 出版社varchar(50)是 出版日期datetime是 介绍varchar(200)是 备注varchar(200)是 5.2 读者信息表 字段名称数据类型是否可为空 读者学号(key)varchar(12)否 读者姓名varchar(10)否 读者性别varchar(2)否 联络电话varchar(10)是 所在系varchar(12)否 生效时间datatime是 失效时间datatime是 违章情况varchar(2)是 累计借书int是 备注varchar(100)是 5.3 管理员信息表 字段名称数据类型是否可为空 工作号(key)varchar(12)否 姓名varchar(12)否 性别varchar(2)否 电话varchar(12)是 住址varchar(12)是 备注varchar(100)是 5.4 借阅表 字段名称数据类型是否可为空 工作号 char(10) 否 ISBN char(10) 否 读者学号 char(10) 否 借书日期datetime否 还书日期datetime否 是否续借char(4)否 备注varchar(100)是 5.5 管理员_书籍 字段名称数据类型是否可为空 工作号char(10)否 ISBNchar(10)否 添加时间data time是 是否在馆char(14)是 5.6 管理员_学生 字段名称数据类型是否可为空 工作号char(10) 否 读者学号char(10)否 借还确定char(4)否 6、物理设计 从理论‘关系模型’到实现\\实施‘数据库建立’,物理文件安排和建立索引 6.1 建立索引 为了提升在表中搜索元组速度,在实际实现时候应该基于键码建立索引是各表中建立索引表项: (1) 读者信息(读者学号) (2) 书籍信息(ISBN) (3)管理员信息(工作号) (4)借阅(工作号,读者学号,ISBN) (5)管理员_书籍(工作号,ISBN) (6)管理员_学生(工作号,读者学号) 6.2 用SQL实现设计 实现该设计环境为Windows Perfessinal+MSSQLServer .0 6.2.1建立图书信息表 create table 图书 (ISBN varchar(20) not null primary key, 书名 varchar(50) not null, 作者 varchar(12) not null, 出版社 varchar(50), 出版日期 datetime, 介绍 varchar(200), 备注 varchar(200),) 6.2.2建立读者信息表 create table 读者 (读者学号 varchar(12) not null primary key, 读者姓名 varchar(10) not null, 读者性别 varchar(2) not null, 联络电话 varchar(12), 所在系 varchar(20) not null, 生效日期 datetime, 失效日期 datetime, 违章状态 char(2), [Page] 累计借书 int, 备注 varchar(100),) 6.2.3建立管理员信息表 create table 管理员 (工作号 varchar(12) not null primary key, 姓名 varchar(12) not null, 性别 varchar(2) not null, 电话 varchar(12), 家庭住址 varchar(50), 备注 varchar(100)) 6.2.4建立借阅表 create table 借阅 (工作号 char(10) not null, ISBN char(10) not null, 读者学号 char(10) not null, 借书日期 datetime not null, 还书日期 datetime not null, 是否续借 char(4) not null, 备注 varchar(100) ) 6.2.5建立管理员_书籍表 create table 管理员_书籍 (工作号 char(10) not null, ISBN char(10) not null, 添加时间 datetime, 是否在馆 char(4)) 6.2.6建立管理员_学生表 create table 管理员_学生 (工作号 char(10) not null, 读者学号 char(10) not null, ISBN char(10) not null, 借还确定 char(4) not null) 6.2.7建立索引 CREATE UNIQUE INDEX 图书索引 ON 图书(ISBN) CREATE UNIQUE INDEX 读者索引 ON 读者(读者学号) CREATE UNIQUE INDEX 管理员索引 ON 读者(工作号) CREATE UNIQUE INDEX借阅索引 ON 借阅(工作号,读者学号,ISBN) CREATE UNIQUE INDEX管理员_书籍索引 ON 管理员_书籍 (工作号,ISBN读者学号) CREATE UNIQUE INDEX管理员_学生ON管理员_学生 (工作号,读者学号) 6.2.8定义视图 (1)读者表视图 CREATE VIEW 读者视图 AS SELECT * FROM 读者 (2)图书表视图 CREATE VIEW 图书视图 AS SELECT * FROM 图书 (3)管理员表视图 CREATE VIEW 管理员视图 AS SELECT * FROM 管理员者 6.2.9管理员操作 (1)注册(register) INSERT INTO 管理员 (工作号,姓名,性别,电话,家庭住址,备注) [Page] VALUES(#工作号,#姓名,#性别,#电话,#家庭住址,#备注) 说明:在登记操作后,管理员得到一个唯一工作号,能够依据这个工作号采查询和修改数据。 (2)注销(unregister) DELETE FROM Provider WHERE(工作号=#工作号); (3)修改个人信息(update) UPdate 管理员 Set (工作号=#工作号,姓名=#姓名,性别=#性别,电话=#电话,家庭住址=#家庭住址,备注=#备注) WHERE(工作号=#工作号) (4)增加书籍(addbooks) INSERT INTO 图书 (ISBN,书名,作者,出版社,出版日期,介绍,备注) VALUES(#ISBN,#书名,#作者,#出版社,#出版日期,#介绍,#备注) INSERT INTO 管理员_书籍表(工作号,ISBN,添加时间,是否在馆) VALUES(#工作号,#ISBN,#添加时间,#是否在馆) (5)删除书籍(deletebooks) DELETE 图书 WHERE(ISBN =# ISBN) (6)修改书籍(updatebooks) UPDATE 图书(书名=#书名, 作者=#作者, 出版社=#出版社, 出版日期= #出版日期, 介绍=#介绍, 备注=#备注) WHERE(ISBN =# ISBN) 6.2.10读者操作 (1)注册(register) INSERT INTO 读者(读者学号,读者姓名,读者性别,联络电话,所在系, 生效日期,失效日期,违章情况,累计借书,备注) VALUES(#读者学号,#读者姓名,#读者性别,#联络电话,#所在系, #生效日期,#失效日期,#违章情况,#累计借书,#备注) 说明:在登记操作后,读者得到一个唯一ID,能够依据这个ID来查询和修改自己信息。 (2)注销(unregister) DELETE 读者 WHERE(读者学号=#读者学号) (3)修改个人信息(update) UPDATE 读者 Set(读者姓名=#读者姓名,联络电话=#联络电话, 所在系=#所在系,生效日期=#生效日期,失效日期=#失效日期, 违章情况=#违章情况,累计借书=#累计借书,备注=#备注) WHERE(读者学号=#读者学号) (4)查询(select) SELECT ISBN,书名,作者,出版社 FROM图书 WHERE ISBN=#ISBN OR书名=#书名 6.2.11管理员对借阅关系操作 (1) 插入读者信息(insert) INSERT INTO 借阅(工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注) VALUES(#工作号,#读者学号,#ISBN,#是否续借,#借书日期, #还书日期,#备注) (2) 更新信息(update) ①更新借出信息 UPDATE借阅 SET(借书日期=#借书日期,还书日期=借书日期+30,是否续借=0) WHERE(工作号=#工作号 AND 读者学号=#读者学号 AND ISBN =#ISBN) UPDATE管理员_图书 SET(是否在馆=0) WHERE(ISBN=#ISBN) UPDATA 学生 SET (累积借书=累积借书+1) WHERE(读者学号=#读者学号) INSERT INTO管理员_学生(工作号,读者学号,确定借还,ISBN) VALUES(#工作号,#读者学号,”0”, #ISBN)) ②更新续借信息 UPDATE 借阅 SET(是否续借=#是否续借) WHERE(工作号=#工作号 AND 读者学号=#读者学号 AND ISBN =#ISBN) [Page] ③更新还书信息 UPDATE管理员_图书 SET(是否在馆=1) WHERE(ISBN=#ISBN) UPDATE管理员_学生 SET(确定借还=”1”) WHERE(工作号=#工作号 AND 读者学号=#读者学号 AND ISBN=#ISBN) 6.2.12触发器建立 (1)时间触发器: Create Trigger 时间 On 借阅 For update,insert,delete As while (select datename(weekday,getdate()))=’星期天’ begin print ’时间错误’ end (2)update触发器: Create Trigger 续借 On 借阅 for Update As If Update(是否续借) begin Update 借阅 Set 还书日期=还书日期+30 Where 工作号=#工作号 end 7、试验数据示例:测试阶段(代码调试) 7.1 输入数据设计 (1)插入管理员 INSERT INTO 管理员(工作号,姓名,性别,电话,家庭住址,备注) VALUES(1001,’张三’,’男’,,’成城市’,’呵呵’) (2)插入读者 INSERT INTO 读者(读者学号,读者姓名,读者性别,联络电话,所在系, 生效日期,失效日期,违章状态,累计借书,备注) VALUES(0222,’李瑞’,’男’,,’环境’,’-05-06’,’-05-06’,’1’,10,’哈’) (3)插入图书 INSERT INTO 图书 (ISBN,书名,作者,出版社,出版日期,介绍,备注) VALUES(’x’,’数据库原理教程’,’王珊’,’清华大学出版社’,’-05-05’,’数据库教程’,’哈’) INSERT INTO 图书 (ISBN,书名,作者,出版社,出版日期,介绍,备注) VALUES(’’,’数据库教程’,’王书’,’清华大学出版社’,’-05-05’,’数据库教程’,’哈’) (4)插入管理员_书籍表 INSERT INTO 管理员_书籍 (工作号,ISBN,添加时间,是否在馆) VALUES(1001,’x’,’-7-7’,’0’) INSERT INTO 管理员_书籍 (工作号,ISBN,添加时间,是否在馆) VALUES(1001,’’,’-7-8’,’1’) (5) 插入借阅信息 INSERT INTO 借阅(工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注) VALUES(1001,0222,’x’,’0’,’-7-6’,’-8-6’,’哈’) INSERT INTO 管理员_学生(工作号,读者学号,借还确定,ISBN) VALUES(1001,’0222’,’0’, ’x’) 7.2 完成借阅、续借、归还操作设计 假设读者想借书籍名为《数据库教程》且不知道ISBN (1)借阅操作以下: if((select 书名 from 图书 where ISBN=’’)= ’数据库教程’) [Page] begin INSERT INTO 借阅(工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注) VALUES(1001,0222,’’,’0’,’-7-7’,’-8-7’,’哈’) UPDATE 管理员_书籍 SET 是否在馆=’0’ WHERE ISBN=’’ UPDATE 读者 SET 累计借书=累计借书+1 WHERE 读者学号=0222 INSERT INTO 管理员_学生(工作号,读者学号,借还确定,ISBN) VALUES(1001,0222,’0’,’’) print ’借阅成功!’ end else print ’借阅失败!’ (2)续借操作以下: if((SELECT 是否续借 FROM 借阅 WHERE 工作号=1001 AND 读者学号=0222 AND ISBN =’’)=’0’) begin UPDATE 借阅 SET 是否续借=’1’ WHERE 工作号=1001 AND 读者学号=0222 AND ISBN =’’ print ’续借成功!’ end else print ’续借失败!’ (3)还书操作以下: If((SELECT 借还确定 FROM 管理员_学生 WHERE 工作号=1001 AND 读者学号=0222 AND ISBN=’’)=’0’) BEGIN UPDATE 管理员_书籍 SET 是否在馆=’1’ WHERE ISBN=’’ print ’还书成功!’ end else print ’还书失败!’ 8、安全性设计 后台数据库应安装在指定服务器上,用户只能经过登录软件访问数据库表中数据。 除上述方法外,不应提供用户其它访问数据库数据直接或间接路径。 9、数据库管理和维护说明 对于本数据管理和维护,比如数据库备份和恢复,能够使用T-SQLBACKUP DATABASE命令和RESTORE DATABASE命令[具体实用说明请参考SQL Server 联机丛书]或使用企业管理器中“全部任务”→“备份数据库(B)”菜单项和或“还原数据库(R)”菜单项操作。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考 图书 综合 管理 系统 数据库 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文