资源描述
数据库系统概论 实验报告学 号1108114062姓 名穆辉宇专 业计算机科学与技术专业类 型设计性实验学 时8实验时间5.29,6.5,6.19,15.00-16.30一、实验题目 设计图书馆图书管理数据库系统二、实验要求 进行需求分析,设计E-R图,设计数据库结构,建立必要的视图和索引,用sql语言建立表结构、视图,对表和视图进行简单的查询。三、总的设计思想,及环境语言、工具等1、建立系统的目的,系统总体概况的介绍对于学校来说,图书馆的作用尤为重要,所以图书馆管理系统应该能够为用户提供充足的信息和快捷的查询手段。为了使系统功能具有更广泛的适用性,现将系统功能分为图书管理,用户管理和系统管理。2、选用的语言选用sql server 2005作为数据库管理系统。 3、需求分析的方法和结果通过调查了解工作人员工作流程,发放调查表了解用户需求等方法,得到各个流程及功能图: 4、核心E-R图 各实体E-R图:读者(身份证号,姓名,密码,性别,班级,读者类型,有效期) 读者类型(读者类型,可借数量,可借时间)某书(条码号,书名,作者,价格,图书类型,出版社,出版日期,供应商,ISBN入库时间,馆藏数目,库存数目) 某本书(图书编号,条码号,书架号,状态) 借阅归还(图书编号,借阅卡号,借出日期,应还日期,归还日期,状态) 四、数据结构(表结构)表的创建及说明某书信息表:表中列名数据类型可否为空条码号Char(20)Not null书名Char(50)可空作者Char(20)可空价格Int可空图书类型Char(50)可空出版社Char(50)可空出版日期Int可空供应商Char(50)可空入库时间Datatime可空馆藏书目Int可空库存数目int可空读者信息表:表中列名数据类型可否为空身份证号Char(50)Not null姓名Char(50)可空密码Char(50)可空性别Char(6)可空班级Char(50)可空读者类型Char(50)可空有效期Char(50)可空读者类型表:表中列名数据类型可否为空读者类型Char(20)Not null可借数量Int可空可接时间Char(20)可空某本书信息表:表中列名数据类型可否为空图书编号Char(50)Not null条码号Char(20)可空书架号Char(20)可空状态Char(20)可空借阅归还信息表:表中列名数据类型可否为空图书编号Char(50)Not null借阅卡号Char(50)Not mull借出日期Char(20)可空应还日期Char(20)可空归还日期Char(20)可空状态Char(20)可空五、索引,视图1 为表reader创建索引readerin Creat unique index readerin on reader(rnum);2 为表book创建索引bookin Create unique index bookin on book(bnum);3 为表worker创建索引workerin Create unique index workerin on worker(wnum);4 创建视图bookview CREATE VIEW bookview AS SELECT rnum, rname, rsex,bnum,bname,bdata,rdata WHERE reader.rname=information.rname AND book.bnum=information.bnum六、模块说明(功能与框图)图书馆管理信息系统的功能模块如图1.1所示。图1.1 图书馆管理信息系统功能模块(1)读者管理1)新增读者。新增读者时要求填写其基本的信息,包括读者号、密码、读者姓名、性别、读者类型、单位、电子邮箱等。2)读者信息维护。读者可以对自己的信息进行修改,图书管理员有权限对已有读者的信息进行修改和删除。3)借阅历史查看。注册的读者可以在网上查询自己的图书借阅情况,一般读者只可以查阅到自己的借阅情况和图书的信息,而图书管理员可以查看任何读者的信息、借阅情况、任何图书的信息和借阅情况。(2)书籍管理1)新增书籍。图书管理员对新增的入库文献资料按规定进行编目、编录、加工、建库。对每本图书、杂志要登记其基本信息,包括图书名称、图书作者、ISBN号、出版地、出版社、出版时间、字数、单价、内容简介、所属分类号,馆藏地、入库时间等。2)书籍信息维护。图书管理员可以对入库的书籍信息进行修改,或是删除该书籍信息,如采购书籍册数。3)书籍类别管理。新增书籍按照中图法分类规则进行分类。(3)借阅管理1)书籍借阅管理。图书管理员根据不同类型读者的借阅情况,对书籍进行管理。(4)查看1)书籍信息查询。登陆本系统的读者或是图书管理员可以查看现有图书系统中任何书籍的信息。2)读者信息查询。一般的读者只能查看自己在该系统上的信息,如借阅的书籍等,而图书管理员可以查看任何读者的信息情况。3)借阅信息查询。读者或是图书管理员可以查看每本书籍的在图书馆的状态,是借阅中还是在馆藏地等。七、主要算法的设计与实现1)、各表的创建及查询:1、表的创建:Create table book1( 条码号 Char(20) 书名 Char(50)作者 Char(20) 价格 Int图书类型 Char(50)出版社 Char(50)出版日期 Int供应商 Char(50)入库时间 Datatime馆藏书目 Int库存数目 Int)Creat table book2( 图书编号 Char(50)条码号 Char(20)书架号 Char(20)状态 Char(20) )Creat table dx( 身份证号 Char(50)姓名 Char(50)密码 Char(50)性别 Char(6)班级 Char(50)读者类型 Char(50)有效期 Char(50)Creat table dl( 读者类型 Char(20)可借数量 Int可借时间 Char(20)Create table jy( 图书编号 Char(50)借阅卡号 Char(20)借出日期 Char(20)应还日期 Char(20)归还日期 Char(20)状态 Char(20)2、表的查询:例如:1、查询条码号为9787040的书的书名,价格,作者。Select 书名,价格作者From book1Where 条码号=9787040;查询结果: 书名 作者 价格 数据库 王珊 39.002)、视图的创建与删除1、视图的创建: Create view one As Select 书名,价格,出版日期 Where 库存数目50;Create view twoAsSelect 可借数量,可借时间Where 读者类型=学生;2、视图的查询:例如:找出库存数目小于20本的所有书的书名,价格,出版日期Select *From oneWhere 库存数目20;查询结果: 书名 价格 出版日期 大学语文 38.8 2011 中国近代史 40 2010八、自我评析与总结我通过认真的查阅资料和老师的指导终于完成了课程 设计题目,很感欣慰。回想当初一开始的时候,遇到了很多的困难,感到无从下手,后经老师指导、自己的学习思考以及和同学的交流探讨终于有了思路。后来的课程设计操作过程让我也感到边学习边实践的乐趣,经过这一段时间的努力我成功的完成了本次课程设计。但是很多的地方考虑的还是不够周全。比如对表和字段的命名以及各表之间的联系命名存在欠缺,有时不能很好的表达自己的思想。课程设计也告诉我还有许多东西需要学习,课程设计当中我意识到自己的理论及实践知识的不足,对数据库设计这方面还是缺乏自主创新的思维能力,有些简单就可实现的东西自己却需好多的步骤才能完成,例如在处理借书和还书时可用事务来处理,但由于自己理论知识的不足没能得到运用。我在以后的学习中要增强自己的自学能力,有的同学在课程设计设中用到了许多没讲到的知识,他们的自学精神值得我去学习。课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。在这此设计中,不光是设计的报表、表单等可以运用的页面,而且是用到了大量的代码来实现其各种功能,不仅是对以前知识的巩固,也是对刚学过的数据库应用与设计的一次真枪实弹的演练,真是有很多的收获,而在这次的设计中花费的大量时间和劳动量,也是希望能得到老师的一点点肯定和指导提高的机会这次课程设计使我对所学的数据库知识有了更进一步的理解,更加系统化,理论化。今后,无论对待什么问题,我一定会充满自信的面对,学习更多的知识来充实自己,争取做得更好,最后,在此感谢史老师的精心指导。 九、参考文献 1萨师煊,王珊。数据库系统概论(第三版)。北京:高等教育出版社,2000.2黄志超,李婷婷。Visual Basic.NET项目开发实践。北京:中国铁道出版社,2003.3黄明,梁旭,曹利超。Visual Basic.NET信息系统设计与开发实例。北京:机械工业出版社,2005.4敬保恩,王保学,时春雨,Visual Basic.NET实例入门。北京:海洋出版社,中国青年出版社,2003.5郑阿琪,刘启芬,顾韵华.SQL Sever 实用教程M.北京:清华大学出版社,2009.6付玉生 .SQL Sever 2005基础教程上机指导M.北京:清华大学出版社,2006.7李德奇 .ASP.NET程序设计M.北京:人民邮电出版社,2007.8杨海霞 .数据库原理与设计M.北京:人民邮电出版社,2006.十、教师评语:实验报告打印格式说明:1页眉页脚:宋体小五号2课程名称标题: 黑体四号加粗3表格内容:宋体五号4标题:黑体小四5正文:宋体五号6页面设置:纸张A4,页边距上下2cm,左右2.8cm指导教师签名:
展开阅读全文