学生成绩管理系统数据库项目设计报告汇编_第1页
学生成绩管理系统数据库项目设计报告汇编_第2页
学生成绩管理系统数据库项目设计报告汇编_第3页
学生成绩管理系统数据库项目设计报告汇编_第4页
学生成绩管理系统数据库项目设计报告汇编_第5页
已阅读5页,还剩17页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学习-好资料计算机1403学生成绩管理系统项目设计报告作者:2015/11/23更多精品文档学习 好资料目录1项目背景及需求分析 21.1项目背景21.2需求分析22概念结构设计 32.1抽象出系统实体 32.2局部E-R图32.3全局E-R图63逻辑结构设计64创建数据库及相关操作 94.1创建数据库94.2建立视图104.3建立存储过程124.4建立触发器 134.5查询问题及查询结果 145项目设计总结18更多精品文档1 项目背景及需求分析1.1 项目背景高校是教学和科研的重要基地, 同时还是培养人才的重要场所。 随着计算机 技术的发展和互联网时代的到来,学校的教学管理受到了极大的挑战。

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

3、的作用,使部门的“信息孤岛”过渡到紧密相关并在全校 范围内都可用的数据。 通过网络可以使管理部门能够更方便的管理学生的成绩系 统;也使得教师能够方便的上传、 校队学生成绩; 还可以使学生能够快速查询成 绩。这样管理部门对信息的管理和控制方式变成双向的, 不但减少管理方面的工 作量,而且可以做到信息管理规范化,从而得到科学的统计和快速的查询。1.2 需求分析针对河北工程大学的成绩管理工作量大、繁杂 , 人工处理非常困难。学生成 绩管理系统借助于计算机强大的处理能力 , 大大减轻了管理人员的工作量 , 并提 高了处理的准确性。学生成绩管理系统的开发运用 , 实现了学生成绩管理的自动 化, 不仅把广

4、大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管 理模式中解放出来 ,而且对学生成绩的判断和整理更合理、 更公正, 同时也给教师 提供了一个准确、清晰、轻松的成绩管理环境。2概念结构设计2.1抽象出系统实体课程(课程编号、课程教师编号、课程名称);成绩(学号、课程编号、分数);学生(班级、姓名、学号、性别、专业);教师(教师号、姓名、所属专业、性别)。2.2局部E-R图学习-好资料更多精品文档学习-好资料2.3全局E-R图更多精品文档姓名教师号课程名称系另u性另U教师教师令名课程教授课程学号1n课程号考试学生成绩专业性另U学号学号姓名班级3 逻辑结构设计E-R 图向关系模型转化要解决

5、的问题是如何将实体型和实体间的联系转化 为关系模式,如何确定这些关系模式的属性和码。设计学生成绩管理数据库,包括课程(course )、学生(student )、成绩(sc)、教师( teacher )四个关系 , 其关系模式中对每个实体定义的属性如下:course表:(课程号(eno),教师号(tno),课程名(cname )此为联系“ course 表”所对应的关系模式。课程号和教师号为该关系的候 选码 , 满足第三范式。stude nt 表:(学号(sno),班级(sclass ),姓名(sn ame,性别(ssex), 专业( smajor )此为联系“ student 表”所对应的关

6、系模式。学号为该关系的候选码,满足 第三范式。sc 表:(学号(sno),课程号(cno),成绩(degree)此为联系“ sc 表”所对应的关系模式。学号和课程号为该关系的候选,满 足第三范式。teacher 表:(教师姓名(tname)、性别(tsex )、教师号(tno )、专业(tmajor )此为联系“ teacher 表”所对应的关系模式。教师号为该关系的候选码,满 足第三范式。数据库中包含 4 个表,即课程信息 (course) ,学生信息 (student) ,成绩信息 (sc) , 教师信息( teacher )。course表的表结构列名数据类型长度小数位数是否允许NULL

7、值说明enochar5否主码cn amevarchar20否tnochar3否student表的表结构列名数据类型长度小数位数是否允许NULL值说明snochar9否主码sn amechar8是ssexchar2是取值:男或 女smajorchar20是sclasschar10是sc表的表结构列名数据类型长度小数位数是否允许NULL值说明snochar10否组合主码,外码degreedecimal41是取值1-100enochar5否组合主码,外码teacher表的表结构列名数据类型长度小数位数是否允许NULL值说明tnochar3否主码tn amevarchar8是tsexchar2是取值:

8、男或 女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 K,EY sname char(8), ssex char(

9、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( CO科学导论''101;')为了简化,其余用 Navicat 添加student 表添加示例:INSERT INTO stude ntVALUES( 140210316叶(何,斌( (,(男(计, (算机科学与技术 (计,算(机 1403(;) 为了简化,其余用Navicat添加。sc表添加示例:INSERT INTO scVALUES( 1402103168(7(,

11、, (C01(;)为了简化,其余用Navicat添加teacher 表添加示例:INSERT 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.

12、sno AND B.cno=C.cno AND cnam科学导论'查询定义视图v_student代码:SELECT *FROM v_stude nt; 结果:lms:qL SELECT *PROM u_student ;i snoS sname+:140210301! 143210302! 140210303I 140210304浩阳壹is.亠旱文I degree i“"!':87-6:!9U-QI!8却;!87.6I422利用视图向表sc中插入一条数据。view_sc是创建的视图 代码:CREATE VIEW view_sc / 创建ASSELECT sno ,de

13、gree,c noFROM sc;INSERT INTO view_sc / 执行VALUES('140210321','88','C01');SELECT sno ,degree,c no/ 查看结果FROM sc;结果:I 140210320 S6-1 .U : (:M;1 140210320 !S8.e : C»4 I:140210321 : C01 :77 rotfs 3.n set -00 sec) nysql> .在sc表中已经正确插入。DELETE FROM view_sc WHERE si1(4210321'

14、;/ 删除结果:10210320:61.S I148210320:E叫回;C03140210320:ee.O !C04l?6 raus in set <0-B8 sec>已经正确删除。4.2.3修改视图 view_sc 的代码为:ALTER VIEW view_sc AS SELECT sno,degree,cno; 删除视图view_sc的代码为:DROP VIEW view_sc;4.3建立存储过程4.3.1创建一个存储过程,从student表中检索出所有班级为计算机1403”的学生 的学号,姓名。代码:DELIMITER /*将MYSQL的结束符设置为/*/CREATE PR

15、OCEDURE proc_stud()READS SQL DATABEGINSELECT sno,sn ame,smajor FROM stude ntWHERE sclass LIKE 计算机 1403%' ORDER BY sno;END /DELIMITER ;/*将结束符恢复成分号*/执行存储过程:CALL proc_stud;结果:一更多精品文档nys(iL> CALL proc_stud;snosn amerFilF>歸趙w删r鼬 鳖鬍王王李甄王赵叶刃丙TC7F刃刊刃刃刊科円刃刃刃刊刃刃刃 -aBa長ssMlBsssawetwwMli8ilif8 与与与与与与与

16、与与与吕与与与与与与与与140210301 140210302 140219303 14»21»304 140218305 14921930& 149210307 1402193MS1 4021R309 148210310 149210311 140210312 140210313 140210314 14021031& 140210317 140210318 14021831? 1402193204.3.2创建一个num_sc的存储过程,统计一个同学的课程成绩个数。 代码:DELIMITER /*将MYSQL的结束符设置为/*/CREATE PROCEDU

17、RE num_sc(IN tmp_s no char(9), OUT cou nt_num INT) READS SQL DATABEGINSELECT COUNT(*) INTO coun t_num FROM scWHERE sn o=tmp_s no;END /DELIMITER ; /*将结束符恢复成分号*/4.4建立触发器在数据库的student表中,定义一个触发器,当一个学生被删除时,把该学 生的学号和姓名添加到delstudent表中。代码:CREATE TABLE delstude nt SELECT sn o,s name FROM stude nt WHERE 1=0; 创

18、建一个空表用于接受删除后的数据CREATE TRIGGER trig_student / 创建 student 表的触发器AFTER DELETE ON stude nt FOR EACH R0WINSERT INTO delstude nt(s no,sn ame) values(old.s no, old.s name);/删除一个学生,验证DELETE FROM stude nt WHERE sn am李甜甜' 触发器是否触发。select * from delstude nt;/查看接受删除数据表结果:select * £ror)dlelstudlent ;I sno

19、> snamc14821GI320 !李甜甜row in<0.00触发器已经触发。4.5查询问题及查询结果4.5.1查询所有学生的学号、姓名、性别和专业 代码:select sno,sn ame,ssex,smajor from stude nt;结果:ysql> select snosnajor -> from student;snasnanessescsmajor140210301 140210302 140210303 140210304 140210385 140210306 1402103M7 140210308 140210369 140210310 140

20、210311 140210312 140210313 140210314 14021031G 140210317 140210318 140210J19富翥王亠启王李甄王赵叶唐高李男男男男男女男女男男女男男男男男男男J / b JMi»悬長s昱SB長昱ftss昱昱5昱畀一,厂厂厂厂yr厂厂厂厂厂厂厂厂厂厂厂厂厂一-勻与与与勻与与与勻耳弓弓与与弓与 孝些芯豆豆豆适玄玄立运玄立-sKP-$ I-】 12U%-E21-一 :一 ;一餐KK負負KKKKKKKK癸支支8 rows in sei: <0scc4.5.2计算“ C01'课程的平均成绩。 代码:SELECT AVG(d

21、egree) FROM scWHERE cno='C01'结果:iysuL> SELECT-> FEOrt so-> WHERE cn®-(;用1,j4卜!88.19&26 !4.5.3查询选修课程名为“高等数学”的学生学号和姓名。 代码:SELECT A.s no,sn ameFROM stude nt A INNER JOIN sc B ON A.s no=B.s no INNER JOIN course C ON B.cno=C.c no WHERE C.cname高等数学';结果:ysQl> SELECT A . sno

22、. nainie-> FROH student A INNER JOIN sc B OM A .sno =B-sno -> INNER JOIN course C ON B.cna=C.cno-> UHERE G-cno=JC01,:£nosnaneF勰FII鑒llw德召 g卩咄E tESS王李甄王赵叶唐高李I 1402103ai ! 140210302 ! 140219393! 14021Q304I 140210305 ! 14021Q30G ! 149210307i 14021Q308I 14021Q309 ! 140210319 ;140210311! 140

23、210312I 140210313 i 140210314 :140219316i 14021Q31?I 140210318i 1402103176 rows in(0,02 sec>454查询“ C03'课程不及格的学生信息 代码:SELECT A.s no,s name,ssex,smajor,sclassFROM stude nt A INNER JOIN sc B ON A.s no=B.s noINNER JOIN course C ON B.cno=C.c noWHERE C.cno='C03' AND B.degree<60;结果:iysql&

24、gt; SELECT H _sno ,£»Arne ss exsnajoisc Iass-> FROM student 4 INNER JOIN se B ON fl.sno=D_ano > INNER JOIN coui'se C ON B .cno=C_cnD-> 创HERE C<cno=JG03J AND B.de?ree<e0;I snoI 1402103S2I 140218304I 140210310! 140218314! 140210319一涛旭文泽召 一霸王赵李+-e -din 4 n 4 n H一 KKKKK -fel

25、8 与与与与与一机i他氓 1403 ill 403 叽 1403 W402rows in set (0.01 sec?4.5.5查询不讲授“ COT课程的教师姓名。代码:SELECT tn ameFROM teacherWHERE tn o=ANY(SELECT tno FROM course WHERE cn o!='C01'); 结果:h)57sq1> SfLECT tnaje、FBOM teachei?-> WHERE tno=AHYCSELECT tno FRON cqufs? WHERE cnQ!=,G01J >i tname歸:!柴h青!打一 _=

26、-=t3 rows in set <0-00 sec>4.5.6插入学号为“ 140210322'、姓名为“曾淑亮”、性别为“男”的学生信息 代码:INSERT INTO stude nt (sn o,s name,ssex)VALUES ('140210322曾 淑亮','男'); 结果:nysql> INSERT INTO student CsnOj-sname, ssex -> UALUES (J140210322" ,J 曾淑亮”,'男'為Query OK” 1 vau *Ffected <

27、0.02 sec>nysql> select «fron student;! sclasssnoI snane! 140210301i 1402103B2! 140210303! 14021Q3B4I 140210305i 140210306! 140210307! 140210308! 14021Q3Q9! 14021Q313i 140210311:140210312i 140210313i 140218314:140210316! 14021031?! 140210318i 140210319:149210322席饌F>wsl®德 r励 零薔王王赵叶唐高去曰 SJ - J - -II- - - J - -i- - -r- a- J -11 - - i. - - -s - - .1 z I- ?, - J - -Is J - "I j - J J - 1 J J - I 1 J J - 1 - 1 - 一 - I - I J J 胡引ffffi引ff引列列tf对_八引ff可副tn引朗 1+.厂厂厂厂

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论