学生成绩管理系统数据库设计文档 -
(完整word版)数据库课程设计--学生成绩管理系统
![(完整word版)数据库课程设计--学生成绩管理系统](https://img.taocdn.com/s3/m/819c02a077232f60dccca1e2.png)
(完整word版)数据库课程设计--学生成绩管理系统数据库原理与应用课程设计说明书题目:学生成绩管理系统院系:专业班级:学号:学生姓名:指导教师:2008年12 月22 日一概述1.1目的与要求随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。
几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。
该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。
要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
1.2设计环境① Microsoft SQL Server 2000② Microsoft Visual C++ 6.0二需求分析2.1 系统功能要求设计此系统实现如下系统功能:(1)使得学生的成绩管理工作更加清晰、条理化、自动化。
(2)通过用户名和密码登录系统,查询课程基本资料,学生所选课程成绩,修改用户密码等功能。
容易地完成学生信息的查询操作。
(3) 设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完整性,并发控制,备份和恢复等方面的功能要求。
2.2 系统模块设计成绩管理系统大体可以分成二大模块如,一是学生的基本信息模块,里面应该包含学生的各方面的基本信息;再者便是课程管理模块,在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有教师、课程等相关信息的模块;可以得到系统流程图:2.3 数据字典数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。
利用SQL Server 2000建立“学生选课”数据库,其基本表清单及表结构描述如下:数据库中用到的表:Student基本情况数据表,结构如下:course数据表,结构如下:score情况数据表,结构如下:三概念模型设计由需求分析的结果可知,本系统设计的实体包括:(1)学生基本信息:学号,姓名,性别,地址,年龄,专业。
数据库课程设计--学生成绩管理系统
![数据库课程设计--学生成绩管理系统](https://img.taocdn.com/s3/m/b9dea01ba4e9856a561252d380eb6294dc88224f.png)
数据库课程设计--学生成绩管理系统一、引言学生成绩是教育领域中最重要的数据之一。
为了有效地管理和分析学生的成绩数据,学生成绩管理系统应运而生。
本文将介绍一个基于数据库的学生成绩管理系统的设计。
二、系统概述学生成绩管理系统主要功能包括学生信息管理、课程管理、成绩录入与查询等。
通过该系统,教师可以方便地管理学生成绩,学生可以随时查询个人成绩,而管理员可以对系统进行维护和权限管理。
三、数据库设计1. 实体-关系模型在学生成绩管理系统中,主要的实体包括学生、课程、教师和成绩。
它们之间的关系如下:- 学生与课程之间是多对多的关系,一个学生可以选修多门课程,一门课程也可以有多个学生参加。
- 学生与成绩之间是一对多的关系,一个学生可以有多个成绩记录,但一个成绩只能对应于一个学生。
- 课程与成绩之间是一对多的关系,一门课程可以有多个成绩记录,但一个成绩只属于一个课程。
2. 数据库表设计基于上述实体-关系模型,我们设计了以下数据库表:- 学生表(Student):包括学生编号、学生姓名、性别、年级等信息。
- 课程表(Course):包括课程编号、课程名称、学分等信息。
- 教师表(Teacher):包括教师编号、教师姓名、职称等信息。
- 成绩表(Score):包括学生编号、课程编号、成绩等信息。
四、系统功能设计1. 学生信息管理教师和管理员可以对学生信息进行增、删、改和查操作。
包括学生的基本信息和选课情况等。
2. 课程管理教师和管理员可以对课程信息进行增、删、改和查操作。
包括课程的基本信息和授课教师等。
3. 成绩录入与查询教师可以根据课程和学生信息录入成绩,同时学生和管理员可以根据课程和学生信息查询成绩。
五、系统界面设计学生成绩管理系统应具有用户友好的界面,便于用户操作和信息浏览。
界面设计应符合人机工程学的原则,以实现良好的用户体验。
六、系统安全设计为了确保学生成绩的保密性和完整性,学生成绩管理系统应具备一定的安全措施。
学生成绩管理系统数据库设计文档 - (全)
![学生成绩管理系统数据库设计文档 - (全)](https://img.taocdn.com/s3/m/8bcabe1cb9d528ea80c7791c.png)
“学生成绩管理”数据库设计文档0、前言(一些必要的说明。
)0、1 数据库说明数据库名:PXSCJ逻辑名称:学生成绩数据库数据文件:PXSCJ、mdf日志文件:PXSCJ_Log登录名:admin,密码:1234560、2表命名说明Cjb:成绩表,保存选课信息Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。
Kcb:课程表。
Tjb:统计表,统计成绩段分布。
Xsb:学生表。
Yhb:用户表,保存系统用户信息。
Jsb: 教师表。
Skb:授课表,记录授课信息。
0、3 系统功能模块图1、 需求分析阶段说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。
一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间与地点。
不同的用户根据身份不同拥有不同的权限。
(1) 数据流图老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio 实现第一层数据流图,第二层数据流图,第三层数据流图)p121老师学生学生成绩管理系统成绩管理信息管理权限管理成绩查询修改密码第一层数据流图第二层数据流图第三层数据流图(略) (2)数据字典(每个实体的详细说明)2、概念设计阶段(1)分ER图(两个分ER图,1)学生与课程,2)教师,课程,班级)(2)总ER图(由分ER图画出总ER图)3、逻辑设计阶段(1)表关系图(瞧就是否可以画出)(2)表结构图Xsb结构Kcb结构Cjb结构Yhb结构Jsb结构Skb结构Tjb结构Cxb结构(3)表优化(判断每个关系就是否达到3NF要求,如果没有达到,则继续规范) 按照(1nf->2nf->3nf进行判断与优化)Cjb(xh,kch,cj)码:(xh,kch)非主属性:cj因为cj完全依赖于(xh,kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFCxb(xb,xbm)码:(xbm)非主属性:xb因为xb完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFJsb(jsbh,jsxm,zy,fy,zc,zw,bz)码:(jsbh)非主属性:jsxm,zy,fy,zc,zw,bz因为jsxm,zy,fy,zc,zw,bz完全依赖于(kch),所以属于2NF 因为不存在传递函数依赖,所以属于3NFKcb(kch,kcm,kkxq,xs,xf)码:(kch)非主属性:kcm,kkxq,xs,xf因为kcm,kkxq,xs,xf完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFSkb(jsbh,kch,bj,sj,dd)码:(jsbh,kch,bj)非主属性:sj,dd因为sj,dd完全依赖于(jsbh,kch,bj),所以属于2NF因为不存在传递函数依赖,所以属于3NFTjb(kch,rs1,rs2,rs3,rs4,rs5)码:(kch)非主属性:rs1,rs2,rs3,rs4,rs5因为rs1,rs2,rs3,rs4,rs5完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFXsb(xh,xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp)码:(xh)非主属性:xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp因为xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp完全依赖于(xh),所以属于2NF 因为不存在传递函数依赖,所以属于3NFYhb(yhbh,yhm,mm,bz)码:(yhbh)非主属性:yhm,mm,bz因为yhm,mm,bz完全依赖于(yhbh),所以属于2NF因为不存在传递函数依赖,所以属于3NF4、物理设计选择合适的DBMS(要求用sql server 2008)5、实施(把sql语句贴在下面)(1)创建数据库(把sql语句贴在下面)create database pxscj1on(name='pxscj1_data',='f:\pxscj1_data、mdf',size=3mb,=10%)log on(name='pxscj1_log',='f:\pxscj1_log、ldf',size=4mb,maxsize=6mb,=1mb)(2)创建表(把sql语句贴在下面)create table xsb(xh char(6)not null primary key, xm char(8)not null,xb bit,cssj datetime,bj varchar(50)not null,zy char(12),zxf int,bz varchar(500),lxfs varchar(50),zp varbinary(max))create table kcb(kch char(3)not null primary key,kcm char(16)not null,kkxq tinyint,xs tinyint,xf tinyint)create table cjb(xh char(6),kch char(6),cj int,constraint c1primary key(xh,kch) )create table yhb(yhbh char(6)primary key not null, yhm char(8),sf varchar(20),mm char(6),bz varchar(5))create table jsb(jsbh char(6)not null primary key, jsxm char(8),zy varchar(30),fy varchar(30),zc varchar(20),zw varchar(20),bz varchar(50))create table skb(jsbh char(6)not null,kch char(3)not null,bj varchar(50)not null,sj varchar(20),dd varchar(50),constraint c2primary key(jsbh,kch,bj))create table tjb(kch char(3)primary key not null,rs1int,rs2int,rs3int,rs4int,rs5int)create table cxb(xb bit not null,xbm char(4)not null primary key)(3)数据库完整性2)视图学生选课情况视图(学号,姓名,课程号,课程名,成绩,学分,总学分,教师)create view xs_xk_viewasselect xsb、XH,XM,kcb、KCH,kcm,CJ,xf,zxf,jsb、jsbh,jsxm from xsb,KCB,CJB,jsb,skbwhere xsb、XH=cjb、XH and kcb、KCH=cjb、KCHand cjb、KCH=skb、kch and skb、jsbh=jsb、jsbhselect*from xs_xk_view3)自定义数据库类型学号,课程号可以考虑用自定义的数据类型。
完整word版学生成绩管理系统数据库设计word文档良心出品
![完整word版学生成绩管理系统数据库设计word文档良心出品](https://img.taocdn.com/s3/m/b486fe15d5bbfd0a78567313.png)
JIANGXI AGRICULTURAL UNIVERSITY 数据库课程设计报告题目学生成绩管理系统数据库设计指导教师:学生成绩管理系统设计目录一、需求分析 .................... 1.1需求概述 ................. 1.2功能简介 ................. 、数据库设计 .................. 2.1确定联系集及E-R 图 ....... 2.2画出E-R 图 ................ 2.3学生成绩管理系统总 E-R 图 三、逻辑数据库设计阶段 ..........3.1 3.23.3 3.4 四、 建表4.1创建数据库..… 4.2创建数据表..… 五、 数据库的运行和维护5.1 班级信息表(Class ) .... 学生信息表(Student ).课程信息表(Course ) 成绩表(Score ) ........5.2 定义 ....................... 5.1.1基本表的创建,建表语句 5.1.2基本表的删除 .......... 数据操作 .................. 5.2.15.2.2 5.2.3 5.2.4 单表查询:.... 连接查询 ..... 操作结果集查询 嵌套查询 ..... 数据库更新操作 .....5.3.1插入数据 ....... 5.3.2修改数据 ....... 5.3.3删除数据 .......为数据库建立索引....5.4.1索引的建立...., 5.4.2索引的删除....,数据库的安全性 ..... 数据库的完整性 .....5.6.1实体完整性定义 5.6.2参照完整性定义六、模式求精 ................七、 总结 ....................5.35.45.5 5.63 4 5 6 .7 7 8 8 8.8 .9 10 10 10 11 11 11 11 12 12 13 13 13 13 14 14 14 14 15 15 15 15 16一、需求分析1.1需求概述针对江西农大的成绩管理工作量大、繁杂,人工处理非常困难。
学生成绩管理系统数据库完整设计
![学生成绩管理系统数据库完整设计](https://img.taocdn.com/s3/m/a75b69fb4793daef5ef7ba0d4a7302768e996fa8.png)
from 班级where 班级编号=学生.班级编号),
课程名,成绩,学分绩点=
case
when 成绩〉=90 then 学分*4
when 成绩<90 and 成绩〉=85 then 学分*3。5
when 成绩<85 and 成绩〉=80 then 学分*3
when 成绩〈80 and 成绩〉=75 then 学分*2。5
系编号char(15) NOT NULL UNIQUE, 系名称char(20) NOT NULL UNIQUE, constraint 教学系pk primary key(系编号,系名称) ) create table 专业( 专业编号char(15) NOT NULL UNIQUE, 专业名称char(20) NOT NULL UNIQUE, 系编号char(15) NOT NULL, constraint 专业pk primary key(专业编号,专业名称), constraint FK_专业_教学系院fo(re系ig)n key(系编号) ref专er业en班ce级s 教学系(系编号) ) create table 班级( 班级编号char(15) NOT NULL UNIQUE, 班级名称char(20) NOT NULL UNIQUE, 专业编号char(15) NOT NULL, constraint 班级pk primary key(班级编号,班级名称), constraint FK_班级_专业foreign key(专业编号) references 专业(专业编号) ) create table 选修课( 课程号char(15)NOT NULL UNIQUE, 课程名char(20)NOT NULL, 学时int, 学分float, 开课学期char(20), constraint 选修课pk primary key(课程号), constraint 选修课_学时ck check(学时>0), constraint 选修课_学分ck check(学分>0) ) create table 必修课( 课程号char(15)NOT NULL UNIQUE, 课程名 char(20)NOT NULL,
学生成绩管理系统毕业设计文档
![学生成绩管理系统毕业设计文档](https://img.taocdn.com/s3/m/1b880ca9988fcc22bcd126fff705cc1755275fbc.png)
学生成绩管理系统毕业设计文档1. 引言本文档描述了学生成绩管理系统的毕业设计项目。
学生成绩管理系统旨在帮助学校有效管理学生成绩信息,并提供方便快捷的查询和分析功能。
2. 项目背景在传统的学生成绩管理中,学校通常使用纸质档案进行学生成绩的记录和管理。
这种方式存在许多问题,如信息存储不便、查询困难以及数据统计和分析复杂等。
针对这些问题,本项目将开发一套学生成绩管理系统,以便更好地管理学生成绩信息。
3. 系统目标学生成绩管理系统的目标如下:- 实现学生成绩信息的电子化存储和管理;- 提供学生、教师和管理员三个角色的访问权限;- 支持学生成绩查询、统计和分析功能;- 简化学生成绩管理流程,提高工作效率。
4. 功能需求学生成绩管理系统应具备以下功能:- 学生角色功能:- 查看个人成绩信息;- 查看课程信息;- 查看学期成绩排名。
- 教师角色功能:- 录入学生成绩信息;- 查看所授课程成绩信息;- 查看学生成绩统计报表。
- 管理员角色功能:- 添加、修改、删除学生信息;- 添加、修改、删除教师信息;- 添加、修改、删除课程信息;- 生成学生成绩统计报表。
5. 技术实现学生成绩管理系统将使用以下技术实现:- 编程语言:Java- 后端框架:Spring Boot- 前端框架:React.js- 数据库:MySQL6. 开发计划本项目将按照以下开发计划进行:1. 需求分析阶段:确定系统需求和功能规范;2. 设计阶段:设计系统架构和数据库结构;3. 编码阶段:根据需求和设计进行编码实现;4. 测试阶段:测试系统功能和性能;5. 部署阶段:部署系统到服务器并进行调试;6. 文档编写阶段:编写系统毕业设计文档。
7. 预期成果通过本项目的毕业设计,预期实现以下成果:- 学生成绩管理系统的开发和实现;- 系统能够满足学校的学生成绩管理需求;- 提供一个方便、快捷的学生成绩查询和分析工具。
8. 总结本文档概述了学生成绩管理系统的毕业设计项目。
(完整版)成绩管理系统数据库设计
![(完整版)成绩管理系统数据库设计](https://img.taocdn.com/s3/m/f52308a1453610661ed9f494.png)
2013-2014学年第2学期经济管理学院实践教学成绩评定表课程实践任务书摘要随着计算机技术和数据库技术的高速发展,已经在社会经济、政治、军事、文化、卫生和教育等领域得到了广泛的应用,并且随着信息化水平的提高,越来越多的领域正在享受计算机技术和数据库技术带来的高效率、高经济效益等优势。
人们的学习、工作和生活各个方面的质量得到了极大的改善和提高。
以现代计算机技术和数据库管理技术为实现基础的数字化教学管理正在蓬勃发展,因此,加强学校信息化资源的管理和利用,提高学校管理信息化水平,是目前学校学生成绩管理的一个大趋势,也是学校信息管理的发展要求。
高校成绩管理系统是数字化校园的一个重要组成部分,可以提高学校信息化管理水平,是学校的管理更加的科学、系统和高效。
本次课程设计主要涉及到对成绩管理系统进行需求分析,概念结构设计,逻辑结构设计和数据库的实施等几部分工作。
关键字:数据库技术;成绩管理系统;概念结构设计;逻辑结构设计目录1前言 (1)1.1课题简介 (1)1.2设计目的 (1)2需求分析 (2)2.1业务需求及处理流程 (2)2.2功能需求分析 (3)2.2.1用户及权限管理 (3)2.2.3学生成绩管理 (4)2.2.4信息查询 (4)2.3 业务规则分析 (4)3概念结构设计 (6)3.1 局部E-R图 (6)3.1.1 确定实体集及属性 (6)3.1.2 确定联系集及属性 (8)3.2 全局E-R图 (10)4逻辑结构设计 (11)4.1 E-R图向关系模型的转换 (11)4.1.1 由实体集转化而来的关系模型 (11)4.1.2 由联系集转化而来的关系模型 (11)4.2 数据模型的优化 (11)5数据库的实施 (12)5.1数据库和基表的创建 (12)5.1.1建立成绩管理系统数据库 (12)5.1.2建立各种基本表 (13)5.2数据的载入 (20)5.3数据的查询 (23)结束语 (27)参考文献 (28)1前言1.1课题简介随着教育制度的改革,高校不断地扩招,学生数量与新兴专业种类也在不断的增加,因此学生成绩管理的工作就变的比以往更复杂。
学生成绩管理系统数据库设计说明书
![学生成绩管理系统数据库设计说明书](https://img.taocdn.com/s3/m/fa0206d650e2524de5187e2c.png)
《学生成绩管理系统数据库设计说明书》一.引言1.编写目地随着知识经济,科技的不断发展以及科技在各领域的不断深入,越来越多的行业和领域步入信息智能化阶段。
信息自动化处理也是提高效益,规范管理,迅速客观审查的有效途径。
学生成绩管理系统在当今教育领域是一个不可缺少的工具软件。
然而,一个好的高质量的软件少之又少,并为根本实现智能化,也不利于科学的管理和审查。
因此,在本软件中心准备开发一个功能完善的学生成绩管理系统。
学生成绩管理系统是学校不可缺少的部分,它的内容对于学校和学生来说都有至关重要的作用。
因此,在本软件设计中心准备开发一个功能完善的学生成绩管理系统。
本文档将对《学生成绩管理系统》这一项目开发的计划进行描述,本文档的读者有:软件开发人员,在校学生,老师,系统管理人员。
2.背景说明:●开发的软件系统的名称:学生成绩管理系统●本项目任务的提出者是江西农业大学,开发者为软件1115班朱利斌,杨彪,廖连云。
用户为江西农业大学全体学生和老师。
实现该软件的计算机中心为个人计算机,sql server , WindowXP , win7 ,win8操作系统;●该软件系统最终将添加于江西农业大学教务网上,登入进江西农业大学教务网的个人页面即可查看学生成绩管理系统;3.定义Students Score System :学生成绩管理系统。
成绩管理:所谓成绩管理,是指以学校中的学生为对象,根据学生的成绩来做记录,将学生的成绩进行有关操作和分配。
并对学生的成绩进行总和与管理。
4.参考资料●《项目开发计划编写参考指南》●《软件文档国家标准》[1] 张海藩,《软件工程导论》,清华大学出版社,2008[2] 陆丽娜,《软件工程》,经济科学出版社,2008[3] 萨师煊,《数据库系统概论》,高等教育出版社,2006[4]薛华成,《管理信息系统》,清华大学出版社,2007二.外部设计1.标识符和状态数据库标示符:student_grade用户名:user密码:secret权限:全部有效时间:开发阶段说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。
学生成绩管理系统数据库设计资料
![学生成绩管理系统数据库设计资料](https://img.taocdn.com/s3/m/69aee884b9f3f90f76c61bfa.png)
课程设计报告学院、系:吉林大学珠海学院计算机科学与技术系专业名称:软件工程课程设计科目:数据库系统概论题目:学生成绩管理系统学号、姓名:指导教师:完成时间:2010年10月--12月工作任务的分工和人员分配学生成绩管理系统(一)调查用户需求本系统的最终用户为管理员。
根据我们日常生活中的经验,结合对学校管理员对成绩管理的需求得到一下几方面内容::1、成绩库的基本情况学校只有一个成绩管理室,每次考完试都要记录成绩,过多的书本记录会造成空间的浪费,所以需要一个数据库来进行日常管理。
1)学生的基本信息:入校时,每位同学都有唯一的学号,都被分配到不同的班级,有自己的班级号,每个学生都有一个学号。
2)课程的基本信息:包括课程的课程号,课程名,课时。
3)成绩单的基本信息:由学生的姓名,学号,成绩,课程号,课程名。
2、用户对系统的要求1)、成绩管理员:a.信息要求:成绩管理员能查询所有成绩相关信息,包括某一学号的学生考试的详细信息和学生的详细信息,以利于对整个成绩系统的全面管理。
b.处理要求:当记录学生成绩信息可能发生错误时,成绩管管理员能对其进行修改。
比如,某些同学被查出是作弊,成绩作废,他在系统中相应的记录就应该标记为0;或者是缺考,他记录中的信息也要作相应的修改等等。
当学生的基本信息发生变更时,成绩管理员能根据有关证明做出修改。
c.安全性与完整性要求:安全性要求:系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;系统应对不同用户设置不同的权限,区分不同的用户,如区分普通管理人员,高级管理员。
完整性要求:各种信息记录的完整性,信息记录内容不能为空;各种数据间相互的联系的正确性;相同的数据在不同记录中的一致性。
二、系统功能的设计和划分根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:用户查询部分,管理员管理部分。
学生成绩管理系统数据库设计
![学生成绩管理系统数据库设计](https://img.taocdn.com/s3/m/dca3482b767f5acfa0c7cd1e.png)
学生成绩管理系统数据库设计JIANGXI AGRICULTURAL UNIVERSITY数据库课程设计报告题目:学生成绩管理系统数据库设计学院:姓名:学号:专业:班级:指导教师:二0一二年 6 月目录一、需求分析 (3)1.1 需求概述 (3)1.2 功能简介 (3)二、数据库设计 (3)2.1 确定联系集及E-R图 (3)2.2 画出E-R图 (4)2.3学生成绩管理系统总E-R图 (5)三、逻辑数据库设计阶段 (6)3.1 班级信息表(Class) (7)3.2 学生信息表(Student) (7)3.3 课程信息表(Course) (8)3.4 成绩表(Score) (8)四、建表 (8)4.1 创建数据库 (8)4.2 创建数据表 (9)五、数据库的运行和维护 (10)5.1 定义 (10)5.1.1 基本表的创建,建表语句 (10)5.1.2 基本表的删除 (11)5.2 数据操作 (11)5.2.1 单表查询: (11)5.2.2 连接查询 (11)5.2.3 操作结果集查询 (12)5.2.4 嵌套查询 (12)5.3 数据库更新操作 (13)5.3.1 插入数据 (13)5.3.2 修改数据 (13)5.3.3 删除数据 (13)5.4 为数据库建立索引 (14)5.4.1 索引的建立 (14)5.4.2 索引的删除 (14)5.5 数据库的安全性 (14)5.6 数据库的完整性 (15)5.6.1 实体完整性定义 (15)5.6.2 参照完整性定义 (15)六、模式求精 (15)七、总结 (16)一、需求分析1.1 需求概述针对江西农大的成绩管理工作量大、繁杂,人工处理非常困难。
学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。
学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。
数据库设计方案-学生成绩管理系统
![数据库设计方案-学生成绩管理系统](https://img.taocdn.com/s3/m/ff7b1efc5901020206409c93.png)
数据库设计方案-学生成绩管理系统广西工学院StudentManagerSystem学生管理系统数据库设计方案第 1 页共 27 页广西工学院目录一( 需求分析 (3)1( 数据需求 (3)2( 功能需求 (3)二( 逻辑数据库设计................................................................................4 1( 标识实体........................................................................................4 2( 标识关系........................................................................................4 3( 标识实体和关系的属性......................................................................4 4( 确定ER模型中实体的属性域和关系属性域............................................6 5( 确定候选键,主键和备用键属性...........................................................7 6( 特化和泛化实体...............................................................................8 7( 检察模型的数据冗余.........................................................................8 8( 模型是否支持用户事务......................................................................9 9( 创建表 (10)10( 表规范化检查 (11)11( 再次检察模型是否支持用户事务 (13)12( 检察业务规则 (15)13( 用户参与讨论逻辑数据库设计 (16)三( 物理数据库设计................................................................................16 1. 设计基本表.................................................................................16 2. 设计派生数据的表示........................................................................17 3. 设计其他业务规则...........................................................................18 4. 分析事务.......................................................................................18 5. 选择文件的组织方式........................................................................20 6. 选择索引.......................................................................................20 7. 设计用户视图.................................................................................20 8. 设计访问规则.................................................................................22 9. 考虑引入受控冗余 (24)四( 附录 (24)1( 数据字典表汇总 (24)2( SQL查询的作业 (26)3( 总结和感想 (27)第 2 页共 27 页广西工学院一(需求分析1(数据需求1(1学生整个学生管理系统的主体,每一个学生有自己的详细的信息。
学生成绩管理系统的数据库设计
![学生成绩管理系统的数据库设计](https://img.taocdn.com/s3/m/0072ef8c915f804d2a16c150.png)
河北工业大学数据库课程设计项目名称学生成绩管理系统的设计班级学号姓名教师一、题目要求系统概述:通过对学校日常教学管理中的课程、选课、学生、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、课程管理等相关功能的小型数据库管理应用系统。
基本要求:1、完成进学生、班级、课程表的维护2、完成成绩表的浏览查找3、完成成绩表的维护4、按班级、按课程计算平均成绩、最高成绩、最低成绩、及格率5、统计某学生、某学期的所有课程的平均成绩。
6、完成用户管理功能7、完成数据备份与恢复功能二、业务流程图三、数据流程图表课程信息表四、E-R模型1、N2、关系模式集学生(学号,姓名,性别,年龄)课程(课程号,课程名,教师名)选课(学号,课程号,成绩)五、数据字典1、学生表学号(Snumber) char(10)primary key 定义为主键姓名(sname) char(10) 非空性别 (sex) char(10) 非空年龄(age) char(10) 非空2、课程表课程号(cnumber) char(10)primary key 定义为主键课程名(cname) char(10)非空学号(snumber) char(10)非空3、选课表学号(snumber) char(10)primary key 定义为主键课程号(cnumber) char(10)primary key 定义为主键成绩(成绩) char (10)非空5、1)查询学生信息select snumber ,sname ,sex ,age from 学生2)查询个人平均分select snumber ,avg(成绩) as 平均分 from 选课 group by snumber3)查询每科最高分select cnumber ,max(成绩) as 最高分 from 选课 group by cnumber4)查询每科最低分select cnumber ,min (成绩) as 最高分 from 选课 group by cnumber5)查询每科平均分select cnumber ,avg (成绩) as 最高分 from 选课 group by cnumber6、11。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“学生成绩管理”数据库设计文档0、前言(一些必要的说明。
)数据库说明数据库名:PXSCJ逻辑名称:学生成绩数据库数据文件:日志文件:PXSCJ_Log登录名:admin,密码:123456表命名说明Cjb:成绩表,保存选课信息Cxb:查询表,记录boolean值对应信息,1代表男,0代表女。
Kcb:课程表。
Tjb:统计表,统计成绩段分布。
Xsb:学生表。
Yhb:用户表,保存系统用户信息。
Jsb: 教师表。
Skb:授课表,记录授课信息。
系统功能模块图1、需求分析阶段说明:学生成绩管理系统需要实现以下功能:一个学生可以选修多门课程,一门课程可以由多个学生选修,学生选修一门课会有一个成绩。
一个教师可以教授多个班级,一个教师也可以教授多门课程,一个班级有多个学生,一门课程也可以由多个老师来上,一个老师给一个班级上一门课有确定的时间和地点。
不同的用户根据身份不同拥有不同的权限。
(1)数据流图老师----成绩管理,学生信息管理,权限管理---学生成绩管理系统—成绩查询--学生(要求:用visio实现第一层数据流图,第二层数据流图,第三层数据流图)p121第一层数据流图第二层数据流图第三层数据流图(略)(2)数据字典(每个实体的详细说明)2、概念设计阶段(1)分ER图(两个分ER图,1)学生和课程,2)教师,课程,班级)(2)总ER图(由分ER图画出总ER图)3、逻辑设计阶段(1)表关系图(看是否可以画出)(2)表结构图Xsb结构Kcb结构Cjb结构Yhb结构Jsb结构Skb结构Tjb结构Cxb结构(3)表优化(判断每个关系是否达到3NF要求,如果没有达到,则继续规范)按照(1nf->2nf->3nf进行判断和优化)Cjb(xh,kch,cj)码:(xh,kch)非主属性:cj因为cj完全依赖于(xh,kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFCxb(xb,xbm)码:(xbm)非主属性:xb因为xb完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFJsb(jsbh,jsxm,zy,fy,zc,zw,bz)码:(jsbh)非主属性:jsxm,zy,fy,zc,zw,bz因为jsxm,zy,fy,zc,zw,bz完全依赖于(kch),所以属于2NF 因为不存在传递函数依赖,所以属于3NFKcb(kch,kcm,kkxq,xs,xf)码:(kch)非主属性:kcm,kkxq,xs,xf因为kcm,kkxq,xs,xf完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFSkb(jsbh,kch,bj,sj,dd)码:(jsbh,kch,bj)非主属性:sj,dd因为sj,dd完全依赖于(jsbh,kch,bj),所以属于2NF因为不存在传递函数依赖,所以属于3NFTjb(kch,rs1,rs2,rs3,rs4,rs5)码:(kch)非主属性:rs1,rs2,rs3,rs4,rs5因为rs1,rs2,rs3,rs4,rs5完全依赖于(kch),所以属于2NF因为不存在传递函数依赖,所以属于3NFXsb(xh,xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp)码:(xh)非主属性:xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp因为xm,xb,cssj,bj,zy,zxf,bz,lxfs,zp完全依赖于(xh),所以属于2NF 因为不存在传递函数依赖,所以属于3NFYhb(yhbh,yhm,mm,bz)码:(yhbh)非主属性:yhm,mm,bz因为yhm,mm,bz完全依赖于(yhbh),所以属于2NF因为不存在传递函数依赖,所以属于3NF4、物理设计选择合适的DBMS(要求用sql server 2008)5、实施(把sql语句贴在下面)(1)创建数据库(把sql语句贴在下面)create database pxscj1on(name='pxscj1_data',filename='f:\',size=3mb,filegrowth=10%)log on(name='pxscj1_log',filename='f:\',size=4mb,maxsize=6mb,filegrowth=1mb)(2)创建表(把sql语句贴在下面)create table xsb(xh char(6)not null primary key, xm char(8)not null,xb bit,cssj datetime,bj varchar(50)not null,zy char(12),zxf int,bz varchar(500),lxfs varchar(50),zp varbinary(max))create table kcb(kch char(3)not null primary key, kcm char(16)not null,kkxq tinyint,xs tinyint,xf tinyint)create table cjb(xh char(6),kch char(6),cj int,constraint c1primary key(xh,kch) )create table yhb(yhbh char(6)primary key not null, yhm char(8),sf varchar(20),mm char(6),bz varchar(5))jsbh char(6)not null primary key, jsxm char(8),zy varchar(30),fy varchar(30),zc varchar(20),zw varchar(20),bz varchar(50))create table skb(jsbh char(6)not null,kch char(3)not null,bj varchar(50)not null,sj varchar(20),dd varchar(50),constraint c2primary key(jsbh,kch,bj) )create table tjb(kch char(3)primary key not null,rs1int,rs2int,rs3int,rs4int,rs5int)xb bit not null,xbm char(4)not null primary key)(3)数据库完整性2)视图学生选课情况视图(学号,姓名,课程号,课程名,成绩,学分,总学分,教师)create view xs_xk_viewasselect,XM,,kcm,CJ,xf,zxf,,jsxmfrom xsb,KCB,CJB,jsb,skbwhere=and=and=and=select*from xs_xk_view3)自定义数据库类型学号,课程号可以考虑用自定义的数据类型。
sp_addtype'xh','char(6)'sP_addtype'kch','char(3)'4)默认值对象Xsb:性别默认为1,总学分默认为0。
Kcb:学生人数默认为40,学分默认为2。
Jsb:zy计算机,fy信息,zc讲师,zw无。
Yhb:mm’123456’Xsb:性别默认为1,alter table xsb add constraint b1DEFAULT 1 for xb总学分默认为0。
alter table xsb add constraint b2DEFAULT 0 for zxf Kcb:学生人数默认为40,alter table kcb add constraint b3DEFAULT 40 for xs学分默认为2。
alter table kcb add constraint b4DEFAULT 2 for xfJsb:zy计算机,alter table jsb add constraint b5DEFAULT'计算机'for zy fy信息,alter table jsb add constraint b6DEFAULT'信息'for fy zc讲师,alter table jsb add constraint b7DEFAULT'讲师'for zc zw无。
alter table jsb add constraint b8DEFAULT'无'for zw Yhb:mm’123456’alter table yhb add constraint b9DEFAULT'123456'for mm 5)规则和check约束Xsb:zxf范围在0-160之间。
Kcb:kkxq范围在1-8之间,xf在1-15之间Cjb:cj范围在0-100之间Xsb:zxf在0-160之间。
alter table xsbadd constraint pk_1check (zxf between 0 and 160)Kcb:kkxq在1-8之间,xf在1-15之间alter table kcbadd constraint pk_2check (kkxq between 1 and 8)alter table kcbadd constraint pk_3check (xf between 1 and 15)Cjb:cj在0-100之间alter table cjbadd constraint pk_4check (cj between 0 and 100)6)参照关系cjb(xh)参照xsb(xh)cjb(kch)参照kcb(kch)yhb(yhbh)参照xsb(xh)和jsb(jsbh)–必须用触发器实现skb(jsbh)参照jsb(jsbh)skb(bj)参照xsb(bj)skb(kch)参照kcb(kch)cjb(xh)—xsb(xh)alter table cjbadd constraint fk_1foreign key (xh)references xsb(xh) cjb(kch)—kcb(kch)alter table cjbadd constraint fk_2foreign key (kch)references kcb(kch)skb(jsbh)—jsb(jsbh)alter table skbadd constraint fk_4foreign key (jsbh)references jsb(jsbh)skb(kch)—kcb(kch)alter table skbadd constraint fk_6foreign key (kch)references kcb(kch)skb(bj)—xsb(bj)--用触发器实现create trigger t1on skbfor insertasbeginif not exists(select*from xsb where bj=(select bj from inserted)) beginprint'插入的班级不存在!'rollback transactionendendyhb(yhbh)—xsb(xh)和jsb(jsbh) --必须用触发器实现alter trigger t2on yhbfor insertasbeginif not exists(select*from xsb where xh=(select yhbh from inserted))beginif not exists(select*from jsb where jsbh=(select yhbh from inserted)) beginprint'插入的编号出错!'rollback transactionendendend(4)用户自定义函数(把sql语句贴在下面)(5)用户自定义存储过程1)根据学号查询学生的选课情况(把sql语句贴在下面)CREATE PROCEDURE xhcxxs@xh char(6)asbeginif exists(select*from cjb where xh=@xh)select*from cjb where xh=@xhelseprint'无此学生选课信息'end2)根据课程号查询课程的选修情况(把sql语句贴在下面)CREATE PROCEDURE kchcxxk@kch char(3)asif exists(select*from cjb where kch=@kch) select*from cjb where kch=@kchelseprint'无此课程选课信息'end根据教师编号查询授课情况(把sql语句贴在下面)CREATE PROCEDURE jsbhcxsk@jsbh char(6)asbeginif exists(select*from skb where jsbh=@jsbh) select*from skb where jsbh=@jsbhelseprint'无此教师授课信息'end3)根据班级查询该班级的授课情况(把sql语句贴在下面)CREATE PROCEDURE bjcxsk@bj varchar(50)asbeginif exists(select*from skb where bj=@bj) select*from skb where bj=@bjelseprint'无此班级授课信息'4)根据课程号号查看授课情况(把sql语句贴在下面)CREATE PROCEDURE kchcxsk@kch char(3)asbeginif exists(select*from skb where kch=@kch)select*from skb where kch=@kchelseprint'无此课程授课信息'end5)课程成绩分布统计。