《数据库课程设计-参考实例.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-参考实例.doc(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库原理与应用课程设计图书管理系统数据库设计学号 姓名 .(2008/2009学年第一学期第 17 周)2008年12月目录1.概述11.1.项目背景11.2.系统说明12.需求分析12.1.需求分析12.2.数据需求12.3.事物需求22.4.数据字典23.方案图表设计43.1.关系模式43.2.E-R图43.2.1.类别实体E-R图:53.2.2.读者信息实体E-R图:53.2.3.信息实体E-R图:53.2.4.记录信息实体E-R图:63.2.5.记录信息实体E-R图:73.2.6.罚款信息实体E-R图:73.2.7.信息实体E-R总图:83.3.数据流程图93.4.关系图:104.数
2、据库源代码114.1.数据库建立114.1.1.创建数据库114.1.2.书本类别表建立114.1.3.创建书库表124.1.4.借书证表建立124.1.5.借书记录表建立124.1.6.还书记录表建立134.1.7.罚款单表建立134.2.数据初始化134.2.1.将书籍类别加入表book_style中134.2.2.将已有的图书加入system_books表中144.2.3.将已有图书证的读者加入system_readers表中154.2.4.添加已借书读者的记录165.结果数据处理175.1.单表查询175.1.1.表book_style中查询175.1.2.表system_books中
3、查询185.1.3.将已有图书证的读者加入system_readers表中结果查询:195.1.4.借书纪录表borrow_record结果查询195.2.超期处理195.2.1.超期查询195.2.2.超期罚款205.3.还书操作215.4.借书操作225.4.1.查询未被借出的书本225.4.2.查询已被借出的书本235.5.借书证操作235.5.1.申请借书证235.5.2.注销借书证245.6.书籍查询245.6.1.查询所有书所对应的类别245.6.2.查询所有工技术类的书:255.6.3.查询清华大学出版社出版的书:265.7.读者状态265.7.1.查询什么人借了什么书265.7
4、.2.查询潘虹借了什么书:276.结束语277.参考文献281. 概述1.1. 项目背景在现代,高科技的飞跃发展,计算机的大量普及,使得人们生活节奏越来越快。因此对教育行业的多元信息进行有效的管理工作,也成为教育行业中的重中之重。目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入高校,但还未普及,而对于教室管理来说,目前还没有一套完整的、统一的系统。为各高校教务工作人员减轻负,提高工作效率,所以制作了教室信息管理系统。教室信息管理系统依据开发要求主要应用于教育系统,完成对日常的教育工作中教室信息数字化管理。比较系统地对教务、教学上的各项服务和信息进行管理,使数据管理更现代化、自动化、智能
5、化、人性化。同时,减轻了学院教务人员管理的工作量,缩小开支,提高工作效率和准确率,使其变得更具有条理性,科学性,为教育行业做出了巨大的贡献,也为今天的民办教育在未来市场的竞争力有所提高。教室信息系统使用了全新的教室管理理念,系统从完善的基础信息管理,和对创建新用户、已创建的教室数据的录入,修改,浏览,统计等功能操作,基本能够满足各高校教师以及学生的需要。“数据库课程设计”是数据库系统及应用、软件工程及程序设计课程的后续实验课,是一门独立开设的实验课程。“数据库课程设计”可以进一步巩固学生的数据库知识,加强学生的实际动手能力和提高学生综合素质。该课程设计运用数据库基本理论与应用知识,在SQLSe
6、rver的环境上建立一个数据库。要求把现实世界的事物及事物之间的复杂关系抽象为信息世界的实体及实体之间联系的信息模型,再转换为机器世界的数据模型和数据文件,并对数据文件实施检索、更新和控制等操作。1.2. 系统说明(主要完成什么功能,开发环境,运行平台等) 设计一个教室信息系统。为实现教室信息查询,课程信息查询,按申请周次、课时、课堂号检索空教室,给予不同用户不同权限。开发环境为SQLServer2012,系统运行平台为SQLServer2012,Visual Studio 2010。2. 需求分析2.1. 需求分析2.2. 数据需求教室信息系统需要完成功能主要有:1. 教室基本信息的输入,包
7、括教室编号、教学楼、教室类型、座位数。2教室基本信息的查询、修改,包括教室编号、教学楼、教室类型等。3空教室基本信息的输入,包括教室编号、教学楼、教室类型、座位数、空闲周次、星期、课堂号。4空教室基本信息的查询、修改,包括教室编号、教学楼、教室类型等。5课程基本信息的输入,包括课程编号、课程名称。6课程基本信息的查询、修改,包括课程编号、课程名称。7. 用户表的基本信息录入,包括用户编号,用户姓名,用户专业,用户权限等。2.3. 事物需求(1)在教室查询部分,要求:a.可以按条件查询教室信息。(2 )在教师申请管理部分,要求:a.可以按用户是否有权限决定其是否可以申请。(3)在教室信息部分,要
8、求:。a.可以直观的了解到教室分布、教室类型、座位数等信息。(4)在课程信息部分,要求:a.可以直观的了解到课程编号、课程名称。2.4. 数据字典用户表字段名类型宽度可否为空备注IDchar20否主键Namevarchar50否Majorvarchar50否Limitchar10否教室表字段名类型宽度可否为空备注ClassRoomIDchar10否主键Buildingvarchar20否Typevarchar50否Quantityvarchar50否空教室表字段名类型宽度可否为空备注IDint20否主键ClassRoomIDchar20否CourseIDchar50否Weekvarchar50
9、否Daychar50否Classint50否字段名类型宽度可否为空备注ID字符20否主键Name字符20否课程表3. 方案图表设计3.1. 关系模式(一) 教室类别(种类名称)(二) 用户(用户编号,用户姓名,用户专业,用户权限)(三) 课程(课程编号,课程名称)(四) 空教室(教室编号,教学楼,空闲周次,星期,课堂号)以上通过关系代数方法的进行运算得到所需要的结果,在实验结果中可以看到。3.2. E-R图根据1)所要实现的功能设计,可能建立它们之间的关系,进而实现逻辑结构功能。图书管理信息系统可以划分的实体有:教室信息信息实体、课程信息实体、空教室信息实体、用户信息实体。用E-R图一一描述这
10、些实体。3.2.1. 教室表E-R图:图 31教室表E-R图3.2.2. 空教室表E-R图:图 32 空教室表E-R图3.2.3. 用户表E-R图:图 33用户表E-R图3.2.4. 课程表E-R图:图 34 课程表E-R图3.3. 数据流程图图 35系统的数据流程图3.4. 关系图:图 36数据库存表关系图4. 数据库源代码4.1. 数据库建立4.1.1. 创建数据库 手动创建数据库ClassRoomApplySystem。4.1.2. 教室表建立 手动建立教室表4.1.3. 创建课程表 手动建立课程表4.1.4. 用户表建立 手动建立用户表4.1.5. 空教室表建立 手动建立空教室表4.2
11、. 数据初始化4.2.1. 将教室信息加入表ClassRoom中 利用Excel录入数据后将相应信息复制到SQL Server中。4.2.2. 将课程信息加入Course表中 课程信息的录入用手动输入。4.2.3. 将用户信息加入User表中 用户信息的录入用手动输入。4.2.4. 将空教室信息加入NullClassRoom表中 空教室信息的录入用手动输入。5. 结果数据处理5.1. 单表查询5.1.1. 表ClassRoom中查询图 51 表ClassRoom中内容5.1.2. 表Course中查询图 52 表system_books中内容5.1.3. User表查询:图 53 表syste
12、m_readers中内容5.1.4. 表NullClassRoom查询图 54 表borrow_record中内容5.2. 空教室查询5.2.1. 建立空教室查询视图查询所有教室空闲情况:查询相应周次、星期、课堂号教室空闲情况:图 555.2.2. 查询所有有申请权限的用户:图 566. 结束语(说明任务完成情况,总结完成本课程设计的心得,领会数据库理论与软件开发实践的关系。有哪些收获。软件还需要哪些改进。)通过这次课程设计,使我对数据库系统的设计及应用有了更加深刻的认识,包括从E-R图的设计,数据结构定义到关系模型的设计,完整性约束的整个过程。并且,通过本次课程设计,也使我的编程能力得到进一
13、步提高,虽然以前也写过涉及数据库的MFC程序,但这次的程序编写要比以前更为系统化,使我对知识的掌握也更加全面。通过这次课程设计,我了解了SQL数据库中的以前不大明白的技术运用。在SQL数据库中,我们把在数据库理论上的知识予以运用,如:建立视图,创建存储过程,应用事务等,在一些基本的数据库操作中,熟悉并巩固了SQL的语法知识。通过对课程设计要求的分析,我们也初步理解一个软件工程的开发流程及发展思路。培养了我们由书面文字要求到转化这种要求到现实模型的能力,即很大程度上培养了我们的建模能力,分析问题,总结归纳问题的能力。这次课程设计也不能说一帆风顺,其中遇到的一个个困难给了我们一次次重新学习,再次思索的机会。我们通过克服这一个个困难,让我们重新又对目前脑子里所掌握的知识进行审理,进行了再次的纠正或者完善,这些都是书本上学不来的。理论联系实际就在这里自然地得到实现。这对我们巩固已学知识,锻炼实践动手能力大有裨益。