系统分析和准备 概述
通过计算机完成高等院校的招生录取工作,是一个复杂而又有代表性的数据库应用。其中涉及到大量考生和院校数据的录入、整理、存储以及由数据库应用程序来实现录取过程的自动化等工作。因为在校学生对高考录取过程都有一定程度的了解,所以我们选用这一项目来达到综合运用Oracle数据库的训练目的。因为这个系统比较复杂,所以我们通过设计和实现一个简化的“招生录取系统”来模拟招生录取的过程。
系统首先要建立合理的数据结构和关系,并输入必要的基本数据,然后根据院校的招生要求和学生填报的志愿,实现对符合要求的考生的录取。通过对这一过程的模拟,我们可以比较全面地应用前面所学的知识和技能,并提高使用Oracle数据库技术解决实际问题的能力。
基本需求分析 先来做一个简单的需求分析。高考招生和录取工作,一般是由招生部门和院校合作完成的。招生部门和院校是该应用程序的使用者。该应用程序为考生只提供一些简单的查询功能。
1.院校
院校应提供招生的要求,如招生的人数、最低录取分数线以及对考生的其他条件的限制。
院校需要在录取结束后查询院校的录取名单。
2.招生部门
招生部门要收集和整理考生信息,建立考生信息库和院校信息库。考生信息库用于存取考生的基本信息,包括考生的高考成绩和报考志愿;院校信息库用于存取院校的基本信息和招生信息。
招生部门通过数据库中的院校信息和考生信息,由相应的数据库应用程序来完成一系列的数据加工处理过程,其中最主要的就是投档录取过程。所谓投档,就是把满足院校要求的考生档案信息发送给院校,由院校审查档案后决定考生的录取与否。为了简化录取过程,我们由系统投档程序来完成考生的录取工作,一旦考生满足院校招生条件,即视为被录取。被录取的考生,在数据库中要标识成录取状态,并记录录取院校的信息,在院校信息库中要回填录取人数的有关信息。
在录取过程中或录取结束后,招生部门要进行查询和统计,主要是在录取结束后统计所有院校的招生情况。
3.考生
考生在录取过程中需要查询其高考分数和录取状态。
10.1.3 功能分析设计
系统完成的主要功能有数据录入、投档和查询统计。
1.数据录入
数据录入要完成院校和学生信息表的数据输入及修改工作。
在本系统中,为了完成录取的模拟,可以虚拟10所院校,给出院校的基本信息和招生要求;虚拟至少50名考生,给出考生的基本信息以及考试成绩,并为每个考生填报2个院校志愿(一志愿和二志愿)。为了简化数据录入,可直接由SQL语句或其他工具完成,比如可以使用TOAD软件来完成。
2.投档过程
招生录取的原则是:一志愿要求优先录取,一志愿全部录取完毕后,才能开始二志愿的录取;二志愿录取对没有达到计划招生人数的院校进行补充录取。
根据以上原则,投档可分为一志愿投档和二志愿投档。一志愿投档是根据院校编号完成对一个学校的一志愿投档的;二志愿投档是根据院校编号完成对一个学校的二志愿投档的,二志愿投档应该在一志愿投档完成以后进行。一次完成全部院校的投档称为自动投档。自动投档一次完成对所有院校的一志愿或二志愿投档。如果使用自动投档,只需为一志愿和二志愿分别投档一次,即完成投档过程。作为补充,可以设计一个调剂投档功能,对一、二志愿没有被录取的考生,如果存在没有招满的院校,补充录取同意调剂的考生。
3.查询统计
在投档过程中或投档结束之后,根据院校编号显示院校的录取结果,即录取考生按分数排序的名单,同时应该显示考生的分数、录取的志愿等信息。
在录取结束之后,按院校的录取平均分数排名,显示所有院校的招生统计信息。
开发账户的创建和授权 在开发之前,要为新的应用创建模式账户,并授予必要的权限,以便创建表和其他数据库对象。为了能够创建账户和授权,必须使用具有足够权限的管理账户,可使用系统管理员账户来创建新的应用账户。
在users表空间上创建开发账户,增加一些权限。
步骤1:创建账户:
说明:从结果可以看出,深圳职业技术学院计划招生8人,已经录取8人。其中一志愿录取3人,二志愿录取5人。最高分数为589分,最低分数为455分,录取控制分数线为450分。
2.招生情况统计
显示按平均分降序排列的招生情况统计表:
院校编号 院校名称 招生人数 录取人数 男生人数 女生人数 最高分数 最低分数 平均分数
1001 清华大学 5 5 3 2 689 627 660
1002 北京大学 4 4 1 3 615 600 609
1005 复旦大学 4 2 2 0 610 600 605
1006 中山大学 5 2 0 2 608 587 598
1003 武汉大学 6 6 2 4 617 560 595
1004 华南科技大学 3 2 1 1 595 588 592
1007 华南理工大学 4 4 3 1 585 532 557
1008 暨南大学 3 3 1 582 534 552
1009 深圳大学 6 5 3 2 555 502 522
1010 深圳职业技术学院 8 8 5 3 598 455 502
PL/SQL 过程已成功完成。
说明:从结果可以看出,清华大学平均录取分数最高,为660分。该校计划招收5人,已经招满,其中男生3人,女生2人,最高分为689分,最低分为627分。
结果分析
系统招生录取过程中和结束后,应该对系统数据进行分析,检查是否存在投档错误,避免造成损失。如果发现问题,则要重新投档。
检查没有被录取的考生一志愿报考的院校:
Sql代码
SELECT 编号,姓名,总分,院校名称
FROM STUDENT S,COLLEGE C
WHERE S.一志愿=C.院校编号
AND S.录取志愿
IS NULL ORDER BY 总分
DESC;