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