数据库论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库原理及应用》

结课论文

专业:财务管理

班级: 09-5班

学号: 06

姓名:王聪

指导教师:刘丹

经济管理学院信息管理教研室

2010年12月

学生选课管理系统分析与设计

1 需求分析

本程序设计就是为了制作一个可以用于学生选课的系统,就是可以进行对本系统数据的管理、数据的查询、常务操作、常用工具和数据库管理帮助等功能。具体来说就是可以通过管理功能对本系统用户进行用户添加及密码修改和权限管理;还可以通过数据管理功能对教师、学生、班级、系部、课程、成绩等信息进行添加、修改和删除等具体的操作;再者可以通过数据查询功能对教师、学生、班级、系部、课程、成绩等信息的查询。总之,学生选课管理系统旨在提供一个可以操作的、方便查询的、易于修改的辅助管理系统。同时提供了系统只能辅助与用户自主选择两种方式,提高查询效率。

教师信息查询:教师用户登录后,进入教师操作功能单元,选择查询,在查询设置中的查询项目选择查询的项目,填写查询条件,点击查询,在教师信息列表就得到了该用户修改后的信息。

教师信息修改:教师用户登录后,进入教师操作功能单元,选择修改,在教师基本信息中修改信息,点击数据操作中点击修改,在教师信息列表就得到了该用户修改后的信息。

教师信息删除:教师用户登录后,进入教师操作功能单元,选择删除,提交之后就将该用户删除了。用户组里面将不存在改用户。

学生选课:学生用户登录后,进入选课信息功能单元,如果是已经登录进入了,在查询设置中的查询项目选择查询的项目,填写查询条件,点击查询之后系统会在已存在的课程信息表中查询该生所属专业应修的课程,如果该门课程存在就可以看到选择的课程出现在了课程列表里面,同时该记录也会出现在已选课程信息里面。如果不存在则输出错误提示信息“没有相关信息”。

成绩查询:学生用户登录后,进入成绩管理功能单元,如果是已经登录进入了,在查询项目中选择查询项目,在查询条件中填写条件,点击查询,就可以看到已选课程的成绩,和学期。

2 数据库的概念结构设计

2.1 概念结构设计概述

概念设计的重点在于信息结构的设计,它是整个数据库系统设计的关键。

概念结构设计的任务是产生反映企业组织信息需求的数据库概念结构,即概念模型。

概念结构设计的策略主要有,自底向下、自顶向下、由里向外和混合策略。其中自底向上是最常用的。

2.2 局部E-R图的绘制

2.3 E-R图的合并

3 数据库的逻辑结构设计

有了E-R模型就可以进行逻辑结构设计,也就是设计基本的关系模式。设计

基本的关系模式主要从E-R模型出发,将其直接转化为关系模式。

逻辑结构设计一般包括两个步骤:

1)将概念层模型转化为某种组织层数据模型。

2)对数据模型进行优化。

E-R模型向关系模型的转换要解决的问题是如何将是开题以及实体间的联系转换为关系模式。关系模型的逻辑结构是一组关系模式的集合。E-R模型由实体,实体的属性以及实体之间的联系三部分组成,因此将E-R模型转换为关系模型实际上就是将实体、实体的属性和实体间的联系转换为关系模式。

一个实体转换为一个关系模式。实体的属性转换为关系的属性,实体的码就是关系的码。

上面的局部E-R图对应的关系模式:

教师(编号,职称,姓名,年龄,性别)编号是主码

课程(课程号,课程名,课时,学分)课程号是主码

班级(班级号,班级名,专业,人数)班级号是主码

学生(学生,姓名,性别,年龄)学号是主码

有了数据库的基本表之后,需要看一下这些基本表能否满足产生报表的需求。在数据库应用系统中,用户需要产生大量的报表,而报表的内容来自数据库中的基本表,因此,在设计好数据库基本表之后,要看一下这些基本表的内容是否全部包含了要产生的报表的内容。如果满足,则说明所涉及的基本表在满足报表方面是完善的;若不能满足,则要看一下报表中哪些项没有包含在基本表当中,并将它们加到合适的基本表当中。当然,在基本表当中增加了新属性后,要判断被修改的表是否还满足第三范式的要求,如果不满足还要进行关系的规范化。

4 数据库的物理结构设计

对于数据库应用系统来说,最常用的功就是安全控制、对数据的增、删改、查及生成报表。

安全控制

任何数据库应用系统都需要安全控制功能,这个教学管理系统也不例外。假设将系统的用户分为如下几类:

系统管理员:有系统全部权限。

教务部门:具有对学生基本数据、课程基本数据和教师授课数据的维护权。

人事部门:具有对教师基本数据的维护权。

各个系:具有对学生的选课情况维护权。

普通用户:具有对数据的查询权。

在实现时,将每一类用户定义为一个角色,这样在授权时只需对角色授权,而无需对每个具体的用户授权。

数据操纵功能

1)查询学生信息

SELECT * FROM student WHERE 学号=’Sno’;( 按学号查询)

SELECT * FROM student WHERE 姓名=’Sname’; (按姓名查询)

2)删除学生信息

DELETE FROM student WHERE 姓名=’Sname’;

3)添加学生记录

INSERT INTO student V ALUES (‘Sno’,’Sname’,’Ssex’,Sage,’Sdept’);

4)修改学生记录

UPDATE student SET 姓名=’Sname’ , 性别=’Ssex’, 年龄=Sage, 所在系=’Sdept

WHERE 学号=’Sno’;

5)查询课程信息

SELECT * FROM course WHERE 课程号=’Cno’;( 按课程号查询)

SELECT * FROM course WHERE 课程名=’Cname’; (按课程名查询)

6)删除课程信息

DELETE FROM course WHERE 课程号=’Cname’;

7)添加课程记录

INSERT INTO course V ALUES (‘Cno’,’Cname’,’Cpno’,Ccredit);

8)修改课程记录

UPDATE course SET 课程名=’Cname’, 先行课=’Cpno’, 学分=Ccredit

WHERE 课程号=’Cno’;

9)查询选修课成绩

SELECT sc. 学号,student. 姓名,sc. 课程号,course. 课程名,sc. 成绩

FROM student,course,sc

WHERE student. 学号=sc. 学号AND course. 课程号=sc. 课程号AND sc. 课程号='Cno'AND sc. 学号='Sno';";

统计每个学生的总分、平均分以及排名

SELECT student. 姓名,SUM( 成绩) 总成绩,A VG( 成绩) 平均成绩

INTO #W

FROM sc,student

WHERE sc. 学号=student. 学号

相关文档
最新文档