ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:267.64KB ,
资源ID:1454501      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1454501.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(学生成绩管理系统数据库项目设计报告文档格式.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

学生成绩管理系统数据库项目设计报告文档格式.docx

1、学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。2 概念结构设计2.1抽象出系统实体课程(课程编号、课程教师编号、课程名称);成绩(学号、课程编号、分数);学生(班级、学号、性别、专业);教师(教师号、所属专业、性别)。2.2局部E-R图2.3全局E-R图3 逻辑结构设计E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。设计学生成绩管理数据库,包括课

2、程(course)、学生(student)、成绩(sc)、教师(teacher)四个关系, 其关系模式中对每个实体定义的属性如下:course表:(课程号(cno),教师号(tno),课程名(cname) 此为联系“course表”所对应的关系模式。课程号和教师号为该关系的候选码,满足第三式。student表:(学号(sno),班级(sclass),(sname),性别(ssex),专业(smajor)此为联系“student表”所对应的关系模式。学号为该关系的候选码,满足第三式。sc表:(学号(sno),课程号(cno),成绩(degree)此为联系“sc表”所对应的关系模式。学号和课程号为

3、该关系的候选,满足第三式。teacher表:(教师(tname)、性别(tsex)、教师号(tno)、专业(tmajor)此为联系“teacher表”所对应的关系模式。教师号为该关系的候选码,满足第三式。数据库中包含4个表,即课程信息(course),学生信息(student),成绩信息(sc),教师信息(teacher)。course表的表结构列名数据类型长度小数位数是否允许NULL值说明cnochar5否主码cnamevarchar20tno3student表的表结构sno9sname8是ssex2取值:男或女smajorsclass10sc表的表结构组合主码,外码degreedecima

4、l41取值1-100teacher表的表结构tnametsextdept164 创建数据库及相关操作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,sname char(8)

5、,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( /创建教师表tname varchar(8),tsex char(2),tdept char(16),CONSTRAINT C1 PR

6、IMARY 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);teacher表添加示例:INSERT INTO teacher4.2建立视图4.2.1定义视图v_student,查询所有选修科学导论的

7、课程的学生的学号(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 ANDame=科学导论;查询定义视图v_studentSELECT *FROM v_student;结果:4.2.2利用视图向表sc中插入一条数据。view_sc是创建的视图CREATE VIEW view_sc /创建SELECT sno,degree,cnoFROM sc;INSERT INTO vie

8、w_sc /执行VALUES(140210321,88C01 SELECT sno,degree,cno /查看结果在sc表中已经正确插入。DELETE FROM view_sc WHERE sno=140210321; /删除已经正确删除。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的结

9、束符设置为/*/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的存储过程,统计一个同学的课程成绩个数。CREATE PROCEDURE num_sc(IN tmp_sno char(9), OUT count_num INT)SELECT COUNT(*) INT

10、O count_num FROM scWHERE sno=tmp_sno;4.4建立触发器在数据库的student表中,定义一个触发器,当一个学生被删除时,把该学生的学号和添加到delstudent表中。CREATE TABLE delstudent SELECT sno,sname FROM student WHERE 1=0; /创建一个空表用于接受删除后的数据CREATE TRIGGER trig_student /创建student表的触发器AFTER DELETE ON student FOR EACH R0WINSERT INTO delstudent(sno,sname) val

11、ues(old.sno, old.sname);DELETE FROM student WHERE sname=甜甜 /删除一个学生,验证触发器是否触发。select * from delstudent; /查看接受删除数据表触发器已经触发。4.5查询问题及查询结果4.5.1查询所有学生的学号、性别和专业select sno,sname,ssex,smajor from student;4.5.2计算“C01”课程的平均成绩。SELECT AVG(degree) FROM sc WHEREo=4.5.3查询选修课程名为“高等数学”的学生学号和。SELECT A.sno,snameFROM st

12、udent A INNER JOIN sc B ON A.sno=B.snoINNER JOIN course C ON B.cno=C.cnoWHERE C.cname=高等数学4.5.4查询“C03”课程不及格的学生信息SELECT A.sno,sname,ssex,smajor,sclassWHERE C.cno=C03 AND B.degree60;4.5.5查询不讲授“C01”课程的教师。SELECT tnameFROM teacherWHERE tno=ANY(SELECT tno FROM course WHEREo!= );4.5.6插入学号为“*”、为“曾淑亮”、性别为“男”

13、的学生信息。INSERT INTO student (sno,sname,ssex)VALUES (140210322曾淑亮男5项目设计总结 这次学生成绩管理系统设计,我们主要采用的是命令行,然后Navicat图形界面辅助操作的方式完成设计。通过这次程序设计,加深了对课程设计的理解。在这次课程设计中,我们回顾了很多以前的东西,也发现了很多的问题,以前都没遇见过的,收获很大。在对不同的功能代码是不一定可以完整的执行的,不过大概都是一样的。看着自己做的系统,我们自己就会又欣慰又难过,欣慰的是终于把它做出来了,虽然遇到很多困难,难过的是自己知道还有很多的不足,但是由于知识的有限,无法去完善,才知道“

14、书到用时方恨少”。 此次成绩管理系统的设计让我们对Mysql数据库的了解更加深入,在整个是设计过程中,通过对把各个管理信息连接起来的分析,锻炼了我们对事情的分析能力,通过怎样解决过程中出现的问题,提高了我们查找文献的能力,对网络资源的利用能力和与其他同学的交流沟通能力。而且经历这次课程设计,我们也学会了自学和分工合作。我们觉得每一次的课程设计,都是让我们对原有知识从了解表面到深入本质,从个体学习到整体把握的跳跃,更是让我们把课本的知识应用到实际中,让我们了解了我们的学习有什么用,能够解决什么样的问题,增加我们的自信和学习的动力。 总之,通过这次课程设计,我们获益匪浅。也感受到了和同学合作开发的乐趣,同时验证了一句话“团结就是力量”。最后感老师的悉心教导,为我们的程序开发之路打下了扎实的基础。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2