学生成绩管理系统数据库项目设计报告

上传人:桔**** 文档编号:564338447 上传时间:2023-11-24 格式:DOC 页数:14 大小:124.50KB
返回 下载 相关 举报
学生成绩管理系统数据库项目设计报告_第1页
第1页 / 共14页
学生成绩管理系统数据库项目设计报告_第2页
第2页 / 共14页
学生成绩管理系统数据库项目设计报告_第3页
第3页 / 共14页
学生成绩管理系统数据库项目设计报告_第4页
第4页 / 共14页
学生成绩管理系统数据库项目设计报告_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《学生成绩管理系统数据库项目设计报告》由会员分享,可在线阅读,更多相关《学生成绩管理系统数据库项目设计报告(14页珍藏版)》请在金锄头文库上搜索。

1、计算机1403 学生成绩管理系统 项目设计报告 作者:2015/11/23目 录1 项目背景及需求分析21。1项目背景21.2需求分析22 概念结构设计32.1抽象出系统实体32。2局部ER图32。3全局E-R图63 逻辑结构设计64 创建数据库及相关操作94。1 创建数据库94.2建立视图104.3建立存储过程124。4建立触发器134。5查询问题及查询结果145项目设计总结171 项目背景及需求分析1.1项目背景高校是教学和科研的重要基地,同时还是培养人才的重要场所.随着计算机技术的发展和互联网时代的到来,学校的教学管理受到了极大的挑战。Internet技术持续迅猛的发展为传统的教学管理提

2、出了新的模式。以现在计算机技术、网络技术为基础的数字化教学管理要依靠自身的人才优势,加强对信息资源的开发和利用,做好学校信息化的基础教学工作,是学校朝着信息化、网络化、现代化的目标迈进。这种新的管理模式,对于管理极为宝贵的特性,可以为新型管理模式的建构提供理想的基础。系统由授课教师来完成成绩录入,而学生可以自行查询成绩.这样除了减轻教学管理部门人员的工作负担,还可以减少信息错误的发生,同时为其他部门甚至全校教职工提供信息服务.开发的学生成绩管理系统则是以校园网为基础的管理系统,利用网络能快速、及时、准确的传递信息的作用,使部门的“信息孤岛过渡到紧密相关并在全校范围内都可用的数据。通过网络可以使

3、管理部门能够更方便的管理学生的成绩系统;也使得教师能够方便的上传、校队学生成绩;还可以使学生能够快速查询成绩。这样管理部门对信息的管理和控制方式变成双向的,不但减少管理方面的工作量,而且可以做到信息管理规范化,从而得到科学的统计和快速的查询.1。2需求分析针对河北工程大学的成绩管理工作量大、繁杂,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性.学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给

4、教师提供了一个准确、清晰、轻松的成绩管理环境.2 概念结构设计2.1抽象出系统实体课程(课程编号、课程教师编号、课程名称);成绩(学号、课程编号、分数);学生(班级、姓名、学号、性别、专业);教师(教师号、姓名、所属专业、性别)。2。2局部ER图课程号课程名任课教师号教师号教师号课程教师师姓名系别性别教师号授课mn班级姓名学生师学号性别专业学号教师师姓名系别教师号性别教授教师号1n成绩师学号课程编号分数课程号学号n1考试学生师专业学号班级性别姓名课程师课程号课程名任课教师号nm选修课程号成绩学号学生师专业学号班级性别姓名2。3全局E-R图1拥有选修课程名成绩学号1n考试课程号学号学号课程编号分

5、数n1讲授教师号课程号课程编号任课教师号课程名称课程性别系别姓名教师号教师成绩专业性别学号姓名班级学生1n教授教师号学号13 逻辑结构设计ER图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。 设计学生成绩管理数据库,包括课程(course)、学生(student)、成绩(sc)、教师(teacher)四个关系, 其关系模式中对每个实体定义的属性如下: course表:(课程号(cno),教师号(tno),课程名(cname) 此为联系“course表”所对应的关系模式。课程号和教师号为该关系的候选码,满足第三范式。student表:(学号

6、(sno),班级(sclass),姓名(sname),性别(ssex),专业(smajor)此为联系“student表”所对应的关系模式。学号为该关系的候选码,满足第三范式。 sc表:(学号(sno),课程号(cno),成绩(degree)此为联系“sc表”所对应的关系模式。学号和课程号为该关系的候选,满足第三范式.teacher表:(教师姓名(tname)、性别(tsex)、教师号(tno)、专业(tmajor)此为联系“teacher表”所对应的关系模式。教师号为该关系的候选码,满足第三范式.数据库中包含4个表,即课程信息(course),学生信息(student),成绩信息(sc),教师

7、信息(teacher).course表的表结构列名数据类型长度小数位数是否允许NULL值说明cnochar5否主码cnamevarchar20否tnochar3否student表的表结构列名数据类型长度小数位数是否允许NULL值说明snochar9否主码snamechar8是ssexchar2是取值:男或女smajorchar20是sclasschar10是sc表的表结构列名数据类型长度小数位数是否允许NULL值说明snochar10否组合主码,外码degreedecimal41是取值1100cnochar5否组合主码,外码teacher表的表结构列名数据类型长度小数位数是否允许NULL值说明

8、tnochar3否主码tnamevarchar8是tsexchar2是取值:男或女tdeptchar16是4 创建数据库及相关操作4.1 创建数据库CREATE database test;/创建test数据库*/4.1。1 创建表CREATE TABLE course(/创建课程信息表cno char(5) NOT NULL,cname varchar(20) NOT NULL,tno char(3) NOT NULL,CONSTRAINT C1 PRIMARY KEY(cno);CREATE TABLE student(/创建学生信息表sno char(9) PRIMARY KEY,sna

9、me char(8),ssex char(2),smajor char(20),sclass char(10));CREATE TABLE sc(/创建成绩表sno char(10) NOT NULL,degree decimal(4,1) ,cno char(5) NOT NULL,CONSTRAINT A1 PRIMARY KEY(sno,cno),CONSTRAINT A2 CHECK(degree=0 and degree=100);CREATE TABLE teacher(/创建教师表tno char(3) NOT NULL,tname varchar(8),tsex char(2)

10、,tdept char(16),CONSTRAINT C1 PRIMARY KEY(tno);4.1.2 添加记录 course表添加示例:INSERT INTO courseVALUES(C01,科学导论,101);为了简化,其余用Navicat添加student表添加示例:INSERT INTO studentVALUES(140210316,叶何斌,男,计算机科学与技术,计算机1403);为了简化,其余用Navicat添加。sc表添加示例:INSERT INTO scVALUES(140210316,87,C01);为了简化,其余用Navicat添加teacher表添加示例:INSERT

11、 INTO teacherVALUES(140210316,叶何斌,男,计算机科学与技术,计算机1403);为了简化,其余用Navicat添加4。2建立视图4.2.1定义视图v_student,查询所有选修科学导论的课程的学生的学号(sno),姓名(sname),成绩(degree).代码:CREATE VIEW v_studentASSELECT A。sno,sname,degreeFROM student A,course B,sc CWHERE A。sno=C.sno AND B。cno=C.cno AND cname=科学导论;查询定义视图v_student代码:SELECT FROM

12、 v_student;结果:4。2.2利用视图向表sc中插入一条数据。view_sc是创建的视图代码:CREATE VIEW view_sc/创建ASSELECT sno,degree,cnoFROM sc;INSERT INTO view_sc/执行VALUES(140210321,88,C01);SELECT sno,degree,cno/查看结果FROM sc;结果:在sc表中已经正确插入。DELETE FROM view_sc WHERE sno=140210321;/删除结果:已经正确删除。4。2.3修改视图view_sc的代码为:ALTER VIEW view_sc AS SELE

13、CT sno,degree,cno;删除视图view_sc的代码为:DROP VIEW view_sc;4.3建立存储过程4.3.1创建一个存储过程,从student表中检索出所有班级为“计算机1403”的学生的学号,姓名。代码:DELIMITER /将MYSQL的结束符设置为/*/CREATE PROCEDURE proc_stud()READS SQL DATABEGINSELECT sno,sname,smajor FROM studentWHERE sclass LIKE 计算机1403 ORDER BY sno;END /DELIMITER ;/将结束符恢复成分号*/执行存储过程:CALL proc_stud;结果:4。3。2创建一个num_sc的存储过程,统计一个同学的课程成绩个数。代码:DELIMITER /将MYSQL的结束符设置为/*/CREATE PROCEDURE num_sc(IN tmp_sno char(9), OUT count_num INT)READS SQL DATABEGINSELECT COUNT(*) INTO count_num FROM scWHER

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 创业/孵化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号