Oracle课程设计学生信息系统.docx
《Oracle课程设计学生信息系统.docx》由会员分享,可在线阅读,更多相关《Oracle课程设计学生信息系统.docx(36页珍藏版)》请在冰豆网上搜索。
Oracle课程设计学生信息系统
苏州市职业大学
课程设计说明书
名称学生信息系统
2011年6月13日至2011年6月17日共1周
院系
班级
姓名
系主任
教研室主任
指导教师
苏州市职业大学计算机工程系课程设计文档1
目录....................................................................................................................2....
一、课程设计的目的与要求......................................................................................3..
二、题目说明.............................................................................................................3...
2.1程序开发背景...............................................................................................3...
2.2开发工具介绍...............................................................................................4...
三、总体设计.............................................................................................................4...
3.1系统流程图:
...............................................................................................4...3.2功能结构图:
...............................................................................................5...
3.3数据库设计:
...............................................................................................6...
概念设计.....................................................................................................6...
数据库实现.................................................................................................7...
四、详细说明.............................................................................................................8...
4.1系统实施.......................................................................................................9...
五、遇到的问题和解决方法....................................................................................1..6六、课程设计总结...................................................................................................1..7.七、参考文献...........................................................................................................1..8.
苏州市职业大学计算机工程系课程设计文档2
一、课程设计的目的与要求
程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题
能力的学科之一。
即使一个简单的程序,从任务分析、确定算法、界面布局、编写代码到
调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维
训练,也有分析问题、解决问题、预测目标等能力的培养。
本实践课的主要目的是:
(1)掌握运用管理系统及数据库原理知识进行系统分析和设计
的方法;
(2)掌握关系数据库的设计方法;(3)掌握SQLServer2000技术应用;
(4)掌握简单的数据库应用程序编写方法;
要求:
熟悉掌握并灵活运用简单数据库,分析数据库的基本运行步骤。
要求正确理解
课题,考虑问题要细致,全面,解决问题的方法要科学合理,切合实际。
并能上机实现。
与指导教师交流学习经验,改正不合理的地方,为以后更深层次的概念设计与逻辑设计奠
定坚实的基础。
二、题目说明
随着学校规模的不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增加。
面
对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。
通过这样的系
统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
现
在的时代是网络普及是时代,学生有条件通过网络方便快捷的查询自己的个人信息。
所
以,学生信息管理系统既能方便学校管理部门的管理,又能方便学生及时查询个人信息。
从自己学习的角度来说:
这次系统的制作过程,无疑加深了自身对这门课理论知识的
理解,大大提高了理论知识的应用水平,而且增强动手能力,可以说是为毕业设计做了很
好准备。
面对以后强大的就业压力,没有熟练的动手能力,光有满脑袋的理论是不行的,
因此本次设计显得十分重要。
2.2程序开发背景
当今时代,世界经济正在从工业经济向知识经济转变。
我们说知识经济的两个重要特
征就是信息化和全球化,要实现信息化和全球化,就必须依靠完善的网络和完善的数据
库。
在这样一个飞速发展的信息时代,在各行各业中离不开信息处理,这正是计算机被广
泛应用于管理信息系统的环境。
使用计算机进行信息控制,不仅提高了工作效率,而且大
大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算
机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。
所以,数据库的应用变得越来越广泛,学习也是越来越深入,优良的数据库设计已经非常需
要,本程序即是基于这个目的而创建。
苏州市职业大学计算机工程系课程设计文档3
2.3
开发工具介绍
Oracle中的SQL*PLUS
三、总体设计
3.2.系统流程图:
系统流程图主要描述出了系统在工作时候的大致情况,通过这个图我们可以很容易的
了解系统工作时的大致情况,具体如图3.1所示。
学籍管理
毕业审查成绩管理教务管理实际开课
排课教师管理
人才培养方案教学计划
选课教学评估
图3.1系统工作流程图
苏州市职业大学计算机工程系课程设计文档4
2.4
功能结构图:
为了实现无纸化办公,以及规范化,迅捷化等我们开发了这一学生成绩管理系统,系
统主要需要完成的功能有:
学校信息管理、教师信息管理、学生性息管理、课程性息管
理、成绩性息编辑、成绩性息查询、补考重修管理以及帮助说明,通过分工我要完成的是
教师性息管理、课程性息管理以及补考重修管理三个模块。
整体功能模块图如图3.2所
示:
学生信息管理系统
年学班成课查
级籍级绩程询
信信信信信管
息息息息息理
管管管管管
理理理理理
学学学班成课年班课成学
校校籍级绩程级级程绩籍
年信信信信信课信信信信
级息息息息息程息息息息
设设设设设设开查查查管
置置置置置置设询询询理
图3.2整体功能模块图
苏州市职业大学计算机工程系课程设计文档5
2.5
数据库设计:
概念设计
E-R图是用来描述某一组织(单位)的概念模型,提供了表示实体、属性和联系的方法。
构
成E-R图的基本要素是实体、属性和关系。
实体是指客观存在并可相互区分的事特;属性
指指实体所具有的每一个特性。
使用E-R图能过更简洁更方便的了解整个系统。
本课程设计中学生信息管理系统的实体E-R图如下:
1、学籍信息表E-R图如图3.3.1所示:
学生信息表
管理
学号姓名学生性别出生日期专业
图3.3.1E-R图
2、成绩信息表E-R图如图3.3.2所示:
成绩信息表管理
学号姓名
课程编号课程名成绩学分班级专业
称
图3.3.2E-R图
3、年级信息表E-R图如图3.3.3所示:
年级信息管理表
年级编号班级编号班级名称
年级数
图3.3.3年级信息管理E-R图
苏州市职业大学计算机工程系课程设计文档6
4、学生信息管理总体E-R图如图3.3.4所示:
班级学校
n1
管理拥有
1n
教师
拥有
学院
n
n1
管理
1
m
n
拥有
1n
学生
管理专业
管理
n
1选择
管理m
n课程
成绩
图.3.3.4总E-R图
数据库实现
1.成绩信息表:
学号,姓名,课程编号,课程名称,成绩,学分,班级,专业。
表3.3.5成绩信息表
列名数据类型大小允许空
学号Char(20)否
姓名Char(20)是
课程编号Char(20)是
课程名称Char(20)是
成绩Char(8)是
学分Char(10)是
苏州市职业大学计算机工程系课程设计文档7
班级Char(50)是
专业Char(20)是
2.6年级信息数据表:
年级数,年级编号,班级编号,班级名称
表3.3.6年级信息表
列名数据类型大小允许空
年级数Char(20)否
年级编号Char(20)是
班级编号Char(20)是
班级名称Char(20)是
2.7xuesheng_xinxi表:
姓名,学号,性别,出生日期,专业
表3.3.7学生信息表
列名数据类型大小允许空
姓名Char(20)
学号Char(20)是
性别Char(20)是
出生日期Char(20)是
专业Char(8)是
四、详细说明
学生信息管理系统包括班级信息管理、学籍信息管理、班级信息管理、成绩信息管
理、课程信息管理、查询管理六大块,学籍信息管理包括了班级信息管理,成绩信息管理
包括了成绩信息管理,课程信息管理包括了课程信息管理和年级课程开设两块,查询管理
包括了班级信息查询,课程信息查询,成绩信息查询以及学籍信息管理。
学校年级设置主要就是对于学校里的年级的设置,学籍信息设置主要是针对于学生们
的学籍的管理班级信息管理主要是针对于班级信息的设置成绩信息设置主要是针对于学生
们的成绩,课程信息设置主要是针对于课程的一些基本信息管理,年级课程开设主要是针
对于一些课程开设的时间,而查询这一块主要就是各种的查询,类如班级信息,课程信息
等一些基本信息的查询都是由这一块完成的。
我主要做的是学生信息(xuesheng_xinxi)
表这部分的内容。
苏州市职业大学计算机工程系课程设计文档8
2.8
系统实施
1)在进行操作之前必须创建表,此xuesheng_xinxi表的过程为:
2)表数据的插入:
insertintoxuesheng_xinxi(学号,姓名,性别,出生日期,班级,专业)
values('1001101620004','刘继桧','男',to_date('19841125','yyyymmdd'),'100110162','软件
工程')
;
insertintoxuesheng_xinxi(学号,姓名,性别,出生日期,班级,专业)
values('1001101620005','张三','男',to_date('19860516','yyyymmdd'),'100110162','软件工
程')
;
insertintoxuesheng_xinxi(学号,姓名,性别,出生日期,班级,专业)
values('1001101620006','李四','女',to_date('19840426','yyyymmdd'),'100110162','软件工
程')
;
insertintoxuesheng_xinxi(学号,姓名,性别,出生日期,班级,专业)
values('1001101620007','王五','男',to_date('19850709','yyyymmdd'),'100110162','软件工
程')
;
insertintoxuesheng_xinxi(学号,姓名,性别,出生日期,班级,专业)
values('1001101620008','孙六','男',to_date('19870816','yyyymmdd'),'100110162','软件工
程')
;
苏州市职业大学计算机工程系课程设计文档9
3)查询表数据记录:
4)表数据的更改及更改后的显示结果:
苏州市职业大学计算机工程系课程设计文档10
5)创建函数过程:
6)现行的DBMS一般都提供了多种存取方法,其中,最常用的是索引法。
索引法是为了
加速对表中的数据行的检索而创建的一种分散的存储结构。
是针对一个表而建立的,它能
够以一列或多列的值为关键字,迅速查找/存取表中行数据加快了数据检索。
建立索引:
CREATEINDEX"NAME4"."学生表"ON"XUESHENG_XINXI"
(
"学号","姓名","性别","出生日期","班级","专业"
);
苏州市职业大学计算机工程系课程设计文档11
7)实现列、行及参照完整性:
8)创建触发器:
9)创建程序包:
CREATEORREPLACEPACKAGExueshengPackageAS
PROCEDUREReturn学号(
p_姓名xuesheng.姓名%TYPE,
p_性别xuesheng.性别%TYPE,
p_Return学号OUTxuesheng.学号%TYPE);
苏州市职业大学计算机工程系课程设计文档12
END
xueshengPackage;
创建程序包主体:
CREATEORREPLACEPACKAGEBODYxueshengPackageASPROCEDUREReturn学号(
p_姓名xuesheng.姓名%TYPE,
p_性别xuesheng.性别%TYPE,
p_Return学号OUTxuesheng.学号%TYPE)
ISBEGIN
SELECT学号
INTOp_Return学号
FROMxueshengWHERE性别=p_性别
AND姓名=p_姓名;
ENDReturn学号;ENDxueshengPackage;
10)创建视图:
苏州市职业大学计算机工程系课程设计文档13
11)连接查询:
12)创建存储过程用于统计学生信息:
13)创建用户、角色,当查找某学生信息时给出信息:
苏州市职业大学计算机工程系课程设计文档14
14)数据的导入导出:
苏州市职业大学计算机工程系课程设计文档15
五、遇到的问题和解决方法
1)在创建存储过程来统计学生信息时出现编译性错误:
解决方案:
将第6行的“性别”改为“xb”,此时属性值一致,程序顺利运行。
2)编译过程错误:
苏州市职业大学计算机工程系课程设计文档16
解决方案:
此时的触发器声明部分带有编译性错误
将第2行改为:
beforeinsertorupdateof学号onxuesheng_xinxi
Foreachrow
操作过程改为:
when(new.学号>1001101620006)
begin
后面的输出设置正确,改正之后,运行成功。
六、课程设计总结
总的来说Oracle数据库的课程设计对我是有挑战性的,由于专业知识的不够充分,使
得在编写时遇到许多的问题,其中也因为我们的没有经验,所以设计出来的东西总是漏洞
百出,不是数据冗余,就是文档组织不合理,以至于在着手设计的过程中,各种意想不到的
困难接踵而至。
并且通过此次课程设计作业,使我明白,做任何事都要持之以恒,特别要认真,勇于
创新!
任何时候都不能自满自足,其实还有很多东西是自己不会的,所以不断请教他人是
非常有必要的。
经过不断的请教和讨论,在终于解决问题的同时,培养了耐心和毅力,也
对数据库有了更深刻的认识,对很多的以前有些陌生的语言能够了解和掌握。
其中的许多
函数在我的脑海中留下了很深的印象。
在这次的课程设计中,最有收获的是提供了一个向老师学习的好机会。
我从指导老师
身上学到了很多东西,老师教会了我们一个从理论走向实际运用的方法,也教会了我们同
学间宝贵的合作精神。
老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使
我受益匪浅。
无论在理论上还是在实践中,都给予我很大的帮助,使我得到不少的提高,
让我熟悉了一个理论与实践相结合的过程,这对于我以后的工作和学习都有一种巨大的帮
助,感谢老师的耐心辅导,我在将来的学习和工作中会更加的努力的。
苏州市职业大学计算机工程系课程设计文档17
七、参考文献
[1]孙春来.SQLServer中文版编程基础.上海:
电子工业出版社,2008:
195-210
[2]知寒工作室.SQLServer2000案例教程.北京:
机械工业出版社,2007:
619-625
[3]《SQLServer开发指南》熊桂喜清华大学出版社
[4]《SQLServer2000开发指南》张营电子工业出版社
苏州市职业大学计算机工程系课程设计文档18