大型数据库应用(学生成绩管理系统)_第1页
大型数据库应用(学生成绩管理系统)_第2页
大型数据库应用(学生成绩管理系统)_第3页
大型数据库应用(学生成绩管理系统)_第4页
大型数据库应用(学生成绩管理系统)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、湖南工业大学课 程 设 计资 料 袋 计算机与通信学院 学院(系、部) 2014 2015 学年第 1 学期 课程名称 大型数据库 指导教师 满君丰 职称 教授 学生姓名 祝丹 专业班级 计算机1102 学号 11408100213 题 目 图书馆管理系统 成 绩 起止日期 2014 年 11 月 22日 2014 年 11 月 29 日目 录 清 单序号材 料 名 称资料数量备 注1课程设计任务书12课程设计说明书13456第 15 页 共 15 页课程设计任务书20142015学年第 1 学期学院(系、部) 计算机与通信学院 专业 计算机科学与技术 班级 1102 课程名称: 大型数据库

2、学生姓名: 祝丹 设计题目: 图书馆管理系统 指导教师: 满君丰 完成期限:自 2014 年 11 月 22 日至 2014 年 11 月 29 日共 1 周内容一、设计内容 (1) 系统分析(包括可行性分析、用户需求分析等)及功能分析;(2) 数据库设计(要求画E-R图,数据流图);(3)数据库的实现,根据需求分析,数据库创建合适的视图、函数、存储过程、触发器。(4) 系统总体功能设计;(5) 完成对数据库的基本操作(包括查询、插入、删除、修改等);进度安排起止日期工作内容课程设计前一周召开动员大会,学生选题; 2014-12-22系统分析和设计; 2014-12-24熟悉软件开发工具、编码

3、系统、系统测试以及中期答辩; 2014-12-29撰写并提交课程设计说明书、源程序等。主要参考资料1 Oracle 10g 数据库管理与应用系统开发 马晓玉 清华大学出版2 Oracle数据库管理与应用教程 丛书编委会 中国电力出版社3 软件工程导论(第五版) 张海藩 清华大学出版社4 实用Java网络编程技术 刘永华 余春华编 中国电力出版社5 Java程序设计标准教程 邱加永 人民邮电出版社6 Oracle实用教程 电子工业出版社7 ASP实用教程 清华大学出版社指导教师(签字): 年 月 日系(教研室)主任(签字): 年 月 日 大型数据库应用课程设计 设计说明书学生成绩管理系统起止日期

4、: 2014 年 12月 22日 至 2014 年 12月 29 日学生姓名祝丹 班级 计本1102学号 11408100213成绩指导教师(签字) 计算机与通信学院2014年 12月29日 目录第一章 系统概述31.1系统背景31.2 可行性研究3第二章 需求分析32.1 运行环境:32.2数据需求4第三章 软件设计53.1 总体设计5第四章 系统实现64.1 数据库实现64.2 代码实现8第五章 心得体会11第六章 参考文献(资料)12第七章 致谢12第一章 系统概述1.1系统背景学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理

5、系统应该能够为用户提供充足的信息和快捷的查询手段,但是几年前,各个学校的学生成绩管理基本上都是靠手工进行,随着各个学校的规模增大,有关学生成绩管理工作所涉及的数据量越来越大,有的学校不得不靠增加人力、物力来进行学生成绩管理。这种管理方式存在着许多缺点,如:效率低、保密性差,另外所用其时间长,产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。如今学校的学生越来越多,成绩管理的工作量越来越大,手工管理成绩的弊端也越来越明显。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对

6、学生档案信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率。所以我想借本次课程设计之际,设计一个简易的学生成绩管理系统。1.2 可行性研究1.技术条件方面的可能性技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要等。学生成绩管理系统的工作主要是在学生和学校之间架起一座桥梁,能相互沟通信息和处理信息。2.使用方面的可行性从社会效益上看,随着技术的发展,采用软件管理学生成绩工作,毫无疑问会在使用过程中产生新的需求和问题,这样也会不断地促进信息技术和

7、软件应用的革新。经过研究,此系统的用户无使用方面的问题。第二章 需求分析2.1 运行环境:操作系统:Windows XP,Windows 7 ;数据库:Oracle 10g2.2数据需求备注出生年月性别总学分学生信息学号专业姓名 学生属性E-R图课程名课程号开课学期学分课程信息学时课程属性E-R图学号学号课程号学生照片成绩成绩照片 照片属性E-R图 成绩属性E-R图第3章 软件设计3.1 总体设计1. 数据库设计1、 XSB表的设计字段名数据类型是否为空默认值说明列明含义XHChar(6)否无主键学号XMChar(8)否无姓名XBChar(2)否“男”性别CSSJdate否无出生时间ZYCha

8、r(12)是无专业ZXFNumber(2)是0总学分BZVarchar2(200)是无备注2、 XSZP表字段名数据类型是否为空默认值说明列明含义XHChar(6)否无主键学号ZPblob是无照片3、 KCB表字段名数据类型是否为空默认值说明列明含义KCHChar(3)否无主键课程号KCMChar(16)否无课程名KKXQNumber(1)是1开课学期XSNumber(2)是0学时XFNumber(1)否0学分4、 CJB表字段名数据类型是否为空默认值说明说明XHChar(6)否无主键学号KCHChar(3)否无主键课程号CJNumber(2)是无成绩第4章 系统实现4.1 数据库实现课程表的

9、实现:学生照片表的实现:成绩表的实现:学生表的实现:查询课程表的界面:查询学生表界面:查询成绩表界面:4.2 代码实现:(1)创建数据库YYGLCREATE DATABASE YGGLMAXINSTANCES 1MAXLOGHISTORY 1MAXLOGFILES 5MAXLOGMEMEBERS 5MAXDATAFILES 100DATAFILE 'F:apporacleoradataygglsystem01.dbf'SIZE 325M reuse AUTOEXTEN ON NEXT 1024K MAXSIZE UNLIMTEDCHARACTER SET ZHS 16GBKNA

10、TIONAL CHARACTER SET AL16UTF16LOGFILE GROUP 1 ('F:apporacleoradataygglredo01.log') SIZE 100M,GROUP 2 ('F:apporacleoradataygglredo02.log') size 100M,GROUP 3 ('F:apporacleoradataygglredo03.log') size 100MDEFAULT TEMPORARY TABLESPACE TEMPTEMPFILE 'F:apporacleoradatayggltemp0

11、1.dpf'EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10MUNDO TABLESPACE UNDO_TS DATAFIL'F:apporacleoradatayggltemp01.dbf'SIZE 150M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED; (2)创建学生表CREATE TABLE XSB(XHchar(6)NOT NULLPRIMARY KEY,XMchar(8)NOT NULL,XBchar(2)DEFAULT'1'NOT NULL,CSSJ dat

12、e NOT NULL,ZYchar(12)NULL,ZXFnumber(2)NULL,BZvarchar2(200)NULL);(3)创建学生照片表CREATE TABLE XSZP(XHchar(6)NOT NULLPRIMARY KEY,ZPblobNULL);(4)创建课程表CREATE TABLE KCB(KCHchar(3)NOT NULLPRIMARY KEY,KCMchar(16)NOT NULL,KKXQnumber(1)NULL,XSnumber(2)NULL,XFnumber(1)NOT NULL);(5)创建成绩表CREATE TABLE CJB(XHchar(6)NOT

13、 NULL,KCHchar(3)NOT NULL,CJnumber(2)NULL,PRIMARY KEY(XH,KCH);(6)创建视图CREATE VIEW XS_KC_CJASSELECT XSB.XH,XSB.XM,XSB.ZY,KCB.KCH,KCB.KCM,CJB.CJFROM XSB CROSS JOIN KCBLEFT OUTER JOIN CJB ON CJB.XH=XSB.XH AND CJB.KCH=KCB.KCH;(7)创建触发器CREATE OR REPLACE TRIGGER xs_deleteAFTER DELETE ON XSB FOR EACH ROWDECLA

14、RE PRAGMA AUTONOMOUS_TRANSACTION;BEGINDELETE FROM CJB WHERE XH=:OLD.XH;DELETE FROM XSZP WHERE XH=:OLD.XH;COMMIT;END;(8)创建存储过程CREATE OR REPLACE PROCEDURE CJ_Data(in_xh IN char,in_kch IN char,in_cj IN number)ASin_count number;in_xf number:=0;in_cjb_cj number:=0;BEGINSELECT XF INTO in_xf FROM KCB WHERE

15、 KCH=in_kch;SELECT COUNT(*) INTO in_count FROM CJB WHERE XH=in_xh AND KCH=in_kch;IF in_count>0 THENSELECT CJ INTO in_cjb_cj FROM CJB WHERE XH=in_xh AND KCH=in_kch;DELETE FROM CJB WHERE XH=in_xh AND KCH=in_kch;IF in_cjb_cj>=60 THEN UPDATE XSB SET ZXF=ZXF-in_xf WHERE XH=in_xh;END IF;END IF;IF in

16、_cj<>-1 THENINSERT INTO CJB VALUES(in_xh,in_kch,in_cj);IF in_cj>=60 THENUPDATE XSB SET ZXF=ZXF+in_xf WHERE XH=in_xh;END IF;END IF;COMMIT;END;BEGIN CJ_Data('101101','101',50);END;第5章 心得体会经过这个学期的数据库学习,让我对oracle有了更深层次的理解。这次设计是一个漫长而又艰苦的过程,也可说是有苦有乐!通过设计让我学到不少:理论是要与实际相结合,只有可以将一条条的

17、理论化为自己所能拥有的经验才是有用的!同时这次设计也让我改变了我以前的一些错误观点:以前我认为一个系统设计中最重要的是程序编码,因为只有程序编码才能实现程序的功能,其他的并不重要。但是通过这次设计,让我知道每一步都是很重要的。此次实验实现了图书管理系统的用户,借书还书等些功能。以前总是简单的用数据库建表,存储一些数据而已。但这次通过对数据库的更深入的学习了解,数据库的功能远远不只这些,在我的数据库里面就采用了数据库的存储过程,然后在前台直接调用存储过程,不但使用方便,安全性也更高。 因为时间关系,该系统制作比较匆忙,因此有些功能还不够完善,还有很多地方考虑不周,在以后的日子里,我会一边学习,一边再思考,争取把设计的系统做到更加完善。第六章 参考文献(资料)1 Oracle 10g 数据库管理与应用系统开发 马晓玉 清华大学出版2 Oracle数据库管理与应用教程 丛书编委会 中国电力出版社3 软件工程导论(第五版) 张海藩 清华大学出版社4 实用Java网络编程技术 刘永华 余春华编 中国电力出版社5 Java程序设计标准教程 邱加永 人民邮电出版社6 Oracle实用教程 电子工业出版社

温馨提示

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

评论

0/150

提交评论