软件学院
课程设计报告书
课程名称数据库原理及应用
设计题目培训中心信息管理系统
专业班级软件14-6班
学号 ********** 姓名黄晓丽
指导教师吕欢欢
2016 年6月
目录
1.设计时间-------------------------------------------------------------------------------------1
2.设计目的-------------------------------------------------------------------------------------1
3.设计任务--------------------------------------------------------------------------------------1
4.设计内容--------------------------------------------------------------------------------------1 4.1需求分析------------------------------------------------------------------------------------1 4.1.1 描述业务-------------------------------------------------------------------------------1 4.1.2 数据流图-------------------------------------------------------------------------------2 4.1.3 数据字典-------------------------------------------------------------------------------6 4.2系统设计------------------------------------------------------------------------------------9 4.2.1概念结构设计--------------------------------------------------------------------------9 4.2.2逻辑结构设计------------------------------------------------------------------------10 4.2.3物理结构设计-------------------------------------------------------------------------11 4.3系统实施---------------------------------------------------------------------------------12 4.3.1数据库实现---------------------------------------------------------------------------12 4.3.2数据载入------------------------------------------------------------------------------13 4.4运行与测试------------------------------------------------------------------------------14 4.4.1运行与测试---------------------------------------------------------------------------14
4.4.2分析------------------------------------------------------------------------------------18
5.总结与展望--------------------------------------------------------------------------------19
6.参考文献-----------------------------------------------------------------------------------20
中文名称 类型 长度 取值范围 约束条件 备注
日期 DATETIME 8 2016-5-01 00:00:00----2016-9-30 00:00:00 Y PRIMARY KEY
班级代号 CHAR 6 ‘01’-’06’ N N
学员学号 CHAR 6 N Y PRIMARY KEY FOREIGN KEY 课程号 CHAR 6 ‘001’-’006’ Y PRIMARY KEY FOREIGN KEY 交款额
INT
8
N
N
N
表2-4 学员报名信息 注:以上表中‘Y ’即存在,‘N ’即不存在
4.3系统实施
4.3.1数据库实现
图3-1 学员文件
中文名称
类型
长度
取值范围
约束条件
备注
学员姓名 CHAR 8 N Y PRIMARY KEY
课程号 CHAR 6 ‘001’-’006’ N N
图3-2 课程文件
图3-3 账目文件
图3-4 学员报名信息
4.3.2 数据载入
载入课程文件:
INSERT INTO 课程文件V ALUES('001','C语言程序设计',50,3800,'B座401','张希',50,2) INSERT INTO 课程文件V ALUES('002','JA V A程序设计',68,4200,'C座101','温雪',50,1) INSERT INTO 课程文件V ALUES('003','网页编程基础',52,4000,'B座402','高月',50,1) INSERT INTO 课程文件V ALUES('004','桌面应用程序开发',38,4500,'C座102','黄蕾',50,2) INSERT INTO 课程文件V ALUES('005','软件工程与测试',40,4200,'B座202','刘晓',50,0) INSERT INTO 课程文件V ALUES('006','移动开发',43,4800,'D座101','张磊',50,1)
结果:
图4-1 2.查询学员文件:
语句:
SELECT * FROM 学员文件
结果:
图4-2 3.查询账目文件:
语句:
SELECT * FROM 账目文件
结果:
图4-3
4.查询学员报名信息
语句:SELECT * FROM 学员
结果:
图4-4
5.查找那门课的老师所招学员还没有满
语句:
SELECT 课程名,教师,招收人数-已报名人数剩余名额FROM 课程文件结果:
图4-5
6.学生‘何青青’报名‘C语言程序设计课程’
语句:
INSERT INTO 学员文件V ALUES(‘01’,’张希’,‘何青青’,’2016-6-30 16:17:20’,0) UPDATE 课程文件SET 已报名人数=已报名人数+1 WHERE 教师=’张希’结果为:
图4-6
7.注销‘王旭朝’的选课记录
语句为:
DELETE FROM 学员文件WHERE 学员姓名=’王旭朝’
DELETE FROM 账目文件WHERE 学员姓名=’王旭朝’
UPDATE 课程文件SET 已报名人数=已报名人数-1 WHERE 教师=’张希’
注销前结果:
图4-7-1
图4-7-2
注销后结果:
图4-7-3
图4-7-4
8.学生何青青付款所学课
UPDATE 学员文件SET 交款额=3800程的款
语句:
INSERT INTO 账目文件V ALUES(‘2016-7-1 16:17:20’,’01’,’103’,’001’,3800)结果:
图4-8
4.4.2分析
培训中心的信息管理系统设计四个表,建立后进行有关的数据载入,设计一系列语句来进行实现。
过程中会经常遇到符号不对,或者插入值与某个表的主码不匹配,但这些问题都是些考验细心的问题,只要仔细检查就能改正。
在进行需求分析和系统设计中的概念结构设计中迷惑了很久,不知道这两的实体有什么关系,经过在网上搜索和询问别人都已解决。
系统数据库课程表中因为将课程号设为了主码,使得无法插入一门课程会有多个老师教的情况,基于数据基数较少,没有建立相关视图,本数据库中应该建立视图方便查询相关信息。
应该账目文件中加入学员姓名,这样单独查询该表时,可以很清晰地得到相关结果。
5 总结与展望
本次课程设计是有关于培训中心信息管理系统,从建表到插入数据,以及和该系统所要实现的基本功能都进行了完整的体现,这是对数据库原理及应用的实践,虽然过程中有很多错误,但都经过调试进行了改正。
历时五天的上机让我对数据库这门课程有了更深的了解,定义一个数据库需要庞大的数据,分析,采集,录入,这都是辛苦的工作。
本次的课程设计,让我收获很多,建立了自己的第一个数据库,对SQL也有了基本的了解。
希望在以后的学习中,能够运用所学知识,做成更多有用的东西。