欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    图书管理系统的SQL_Server数据库设计.pdf

    • 资源ID:74668268       资源大小:93.17KB        全文页数:10页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    图书管理系统的SQL_Server数据库设计.pdf

    图书管理系统数据库设计图书管理系统数据库设计 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 2000 Perfessinal+MSSQLServer 2000.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 定义视图 ()读者表视图 CREATE VIEW 读者视图 AS SELECT*FROM 读者 ()图书表视图 CREATE VIEW 图书视图 AS SELECT*FROM 图书 ()管理员表视图 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,张三,男,02885965555,成都市,呵呵)(2)插入读者 INSERT INTO 读者(读者学号,读者姓名,读者性别,联系电话,所在系,生效日期,失效日期,违章状态,累计借书,备注)VALUES(20050222,李瑞,男,02888994456,环境,2007-05-06,2010-05-06,1,10,哈)(3)插入图书 INSERT INTO 图书(ISBN,书名,作者,出版社,出版日期,简介,备注)VALUES(730203009x,数据库原理教程,王珊,清华大学出版社,2006-05-05,数据库教程,哈)INSERT INTO 图书(ISBN,书名,作者,出版社,出版日期,简介,备注)VALUES(7302030091,数据库教程,王书,清华大学出版社,2006-05-05,数据库教程,哈)(4)插入管理员_书籍表 INSERT INTO 管理员_书籍(工作号,ISBN,添加时间,是否在馆)VALUES(1001,730203009x,2007-7-7,0)INSERT INTO 管理员_书籍(工作号,ISBN,添加时间,是否在馆)VALUES(1001,7302030091,2007-7-8,1)(5)插入借阅信息 INSERT INTO 借阅(工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注)VALUES(1001,20050222,730203009x,0,2007-7-6,2007-8-6,哈)INSERT INTO 管理员_学生(工作号,读者学号,借还确认,ISBN)VALUES(1001,20050222,0,730203009x)7.2 完成借阅、续借、归还的操作设计 假设读者想借书籍名为数据库教程且不知道 ISBN (1)借阅操作如下:if(select 书名 from 图书 where ISBN=7302030091)=数据库教程)Page begin INSERT INTO 借阅(工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注)VALUES(1001,20050222,7302030091,0,2007-7-7,2007-8-7,哈)UPDATE 管理员_书籍 SET 是否在馆=0 WHERE ISBN=7302030091 UPDATE 读者 SET 累计借书=累计借书+1 WHERE 读者学号=20050222 INSERT INTO 管理员_学生(工作号,读者学号,借还确认,ISBN)VALUES(1001,20050222,0,7302030091)print 借阅成功!end else print 借阅失败!(2)续借操作如下:if(SELECT 是否续借 FROM 借阅 WHERE 工作号=1001 AND 读者学号=20050222 AND ISBN=7302030091)=0)begin UPDATE 借阅 SET 是否续借=1 WHERE 工作号=1001 AND 读者学号=20050222 AND ISBN=7302030091 print 续借成功!end else print 续借失败!(3)还书操作如下:If(SELECT 借还确认 FROM 管理员_学生 WHERE 工作号=1001 AND 读者学号=20050222 AND ISBN=7302030091)=0)BEGIN UPDATE 管理员_书籍 SET 是否在馆=1 WHERE ISBN=7302030091 print 还书成功!end else print 还书失败!8、安全性设计 后台数据库应安装在指定服务器上,用户只能通过登录软件访问数据库表中的数据。除上述方法外,不应提供用户其他访问数据库数据的直接或间接途径。9、数据库管理与维护说明 对于本数据的管理与维护,例如数据库的备份与恢复,可以使用 T-SQL 的BACKUP DATABASE 命令和 RESTORE DATABASE 命令,也可以用企业管理器中的备份与恢复

    注意事项

    本文(图书管理系统的SQL_Server数据库设计.pdf)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开