学生学籍管理系统------上☞(设计报告篇)

一、数据库需求分析

1.1项目提出

随着计算机走进千家万户,改善了我们工作生活的方式,减轻了我们的生活压力。用计算机代替繁重的人工工作,已经成为了一种适应时代潮流的一种方式。在学校中,学生的学籍信息管理是一个非常重要且繁琐的事情,如何既能方便的进行学生信息的录入、删除、更新、修改,为全校师生的学习生活提供便利,又能减轻学籍系统数据库管理人员的工作负担,高效地完成各项信息更新查询工作,是一件非常重要的事情。高校学籍管理数据库应运而生。

1.2.调查使用该学籍管理数据库的用户的实际需求

我们以高校学生学籍管理业务为依托,结合科学管理的理论,设计并开发一个学籍管理系统,提供一个科学合理的学生学籍管理解决方案。根据管理权限的不同,将用户分为学生、教师、教务管理人员三种,具有不同的权限。权限要求如下:

(1)提供简单、方便的信息录入、查询、修改、增加、删除等操作。

(2)根据使用者身份的不同,赋予不同的权限以便其完成对应的操作。

(3)进行成绩更改时,能够自动更改学生的学分总数

(4)节省学籍管理的成本。

(5)对系统提供必要的权限管理。

二、数据库概念结构设计

2.1.实体E-R图

学生:(学号,姓名,性别,年龄,系别,已修总学分)

课程:(课程号,教师编号,课程名,学分)

选课:(学号,课程号,教师编号)

教务处:(职工编号,姓名)

教师:(教师编号,姓名,系号)

选课成绩:(学号,课程号,成绩,学分)

管理:(职工编号,学号)

2.2系统E-R图

E-R图的集成

 三、数据库逻辑结构设计

关系数据模式:

         学生和课程之间是m:n的选课关系,给他们加一个独立的选课表记录。

                学生(学号,姓名,年龄,性别,系别,已修总学分)

                课程(课程号,教师编号,名称,学分)

                选课(学号,课程号,教师编号

        学生和课程之间有一个m:n的选课成绩关系。用一个独立的选课成绩表记录。

                学生(学号,姓名,年龄,性别,系别,已修总学分)

                课程(课程号,教师编号,名称,学分)

                选课成绩(学号,课程号,成绩,学分)

        学生和教务处有m:n的管理关系,用一个独立的管理表记录。
                学生(学号,姓名,年龄,性别,系别,已修总学分)

                教务处(职工编号,姓名)

                管理(职工编号,学号

四、数据库物理结构设计  

 4.1物理设计阶段的目标与任务

数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:

  1. 确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构。
  2. 对物理结构进行评价,评价的重点是时间和空间效率。在数据库的物理设计中,最主要的自然是决定确定数据存储结构,在数据的存储时间和空间利用率中权衡,选择一个折中的方案。

 4.2数据存储方面

为数据库中各基本表建立的索引如下:

  1. 由于基本表学生信息表的主码学号经常在查询条件和连接操作的连接条件中出现,所以建立索引,优化数据库,使查询的速度更快;
  2. 由于基本表课程信息表的主码课号经常在查询条件和连接操作的连接条件中出现,所以建立索引,优化数据库,使查询的速度更快;

五、数据库操作代码部分

5.1 数据库创建

创建数据库:

此处没有用代码,而是用SQL server management studio操作完成。数据库右击,选择新建数据库,然后在出来的界面中,写上创建的数据库名称,以及行数据和日志的初始大小,自动增量等内容,点击下方添加,新的数据库就添加完成了。

5.2 创建表代码

创建学生表:

create table student(

    sno char(10) not null primary key,

    sname char(20),

    ssex char(2),

    sage smallint,

    sdept char(20),

    scredit smallint

);

创建课程表:

create table course(

    cno char(10) unique not null,

    cname char(40) not null,

    ccredit smallint,

    tno char(10),

    primary key(cno,tno),

    foreign key(tno) references teacher(tno)

)

创建选课成绩表:

create table sc_grade(

    sno char(10),

    cno char(10),

    grade smallint,

    credit smallint,

    primary key(sno,cno),

    foreign key(sno) references student(sno),

    foreign key(cno) references course(cno)

);

alter table sc_grade

add constraint c1 check(grade between 0 and 100)

创建教务管理表:

create table jiaowuchu(

    jno char(10) not null primary key,

    jname char(20)

);

创建教师表:

create table teacher(

    tno char(10) not null primary key,

    tname char(20),

    tdept char(20)

)

创建管理表:

create table manage(

    jno char(10) not null,

    sno char(10) not null,

    primary key(jno,sno),

    foreign key(jno) references jiaowuchu(jno),

    foreign key(sno) references student(sno)

)

创建选课表:

create table sc(

    sno char(10) not null,

    cno char(10) unique not null,

    tno char(10) not null,

    primary key(sno,cno,tno),

    foreign key(sno) references student(sno),

    foreign key(cno) references course(cno),

    foreign key(tno) references teacher(tno)

)

5.3 数据库的查询操作代码

根据学生学号、课程课号等查询成绩信息(单表查询)

根据课程编号查询本课程的最高成绩、平均成绩、最低成绩(多表连接查询)

查询选修了某位老师所教课程的学生的姓名(多表连接查询)

根据学生编号查询该生的所有课程的总成绩和总学分情况(多表连接查询)

按照课程编号分组统计选课人数、最高成绩、最低成绩、平均成绩、及格人数(分组查询)

 5.4视图创建代码

我们对于学生,学生成绩,教师,教师教课四个,都设置了很多视图,由于视图数量过多,我们使用python进行批量创建,代码如下:5.4 创建索引

用SQLserver management stdio进行创建,没有使用代码

六、系统规范化设计

6.1 数据库的完整性设计

(1)触发器:在成绩表上修改成绩时,自动修改学生的学分。代码如下

 (2)约束:有主码非空且唯一的实体性约束,有外码的参照完整性约束,也有用户自定义的完整性,如学生成绩区间为0到100的约束。

6.2 数据库的维护和安全性设计

首先,我们为教务管理人员,创建登录账号,我们为他们设置了对所有表的增删改查的权限,便于他们对学生,教师,选课等信息的更改和查询。他们具有此系统的最高权限。代码如下:

 然后我们为学生创建登录账号,设置学生可以通过自己的账号密码查询自己的相关信息,例如,个人信息,选课信息,成绩等等。代码如下:

 接着,我们为老师创建了登录账号,老师可以修改自己所教学生的信息,并且可以查询自己所教学生信息。代码如下:

 我们组只设置了这三种用户,教务人员,老师,和学生,权限依次降低,保障了学籍信息的安全性,权限不够的用户,无法查看或修改不在他权限之内的信息。

七、总结

7.1 收获

        通过本次的数据库设计作业学籍管理系统,我们小组更好的了解到构建数据库的整体过程;通过分工合作,我们对于不同模块相互之间的依赖关系也有了更深的认识。和以往的数据库实验不同,这次的大作业是学习过的各种知识的综合运用,而且还是对知识的深层应用,对于我们能力的提高具有十分巨大的作用 。

        在选择大作业时,考虑对作业的了解程度,以及和我们的相关程度,最后确定学籍管理系统这一选择。

        对于这门课程,我们组都展现了极大地兴趣,因为它在我们生活中的应用十分的广泛,而且益处颇多。以前写数据库实验感觉自己掌握了,但如今一上难度,我们就体会到了自己的不足之处。知识间的相互嵌套运用,需要一个大局观才能从开始时的需求分析,到结束,做到心中有数,统筹全局。通过这次作业,我们知道了数据库的概念、数据管理系统的发展、数据库系统的组成、以及为什么使用数据库数据、如何使用数据库技术等关键性问题;了解到了数据库设计的方法和步骤,掌握实体型、属性和联系的概念、实体之间的一对一、一对多和多对多联系等必要知识。从而,我们组才能设计出最终的学籍管理系统的模样。

        而在于团队合作的一些收获,我们认为在一个团队中永远要确立一个领导者,进行任务的分发,任务的讨论,以及监督职责,否则任务进行缓慢,毫无效率。团队协作要求分工明确,相互学习,相互合作,才能将团队任务完美进行。团队合作只有默契、凝聚才能够高效完成任务。

7.2 不足和改进

在整个大作业的制作过程中,有很多不足与缺点。

  1. 观点不一:

在进行问题讨论,以及任务分发时,出现了很多争执,对于一个问题应当如何实现各执一词,这个时候,我们思想不同意,对于我们接下来的个人任务完成,带来了许多的困扰,效率极其低下。幸好我们的小组长,及时拨乱反正,力排众议,最终拍板,让我们继续顺利执行。

  1. 没有标准化:

在一些工程较大,我们进行分工合作的时候,很多细化的东西在最开始没有标准,导致每个人做的东西不一样,达不到标准,很多的废物前期工程。

  1. 对知识的串联的不足:

在之前的作业中,都是老师给出一定基础,我们进行一些其他的操作,但是当需要自己构建一个数据库,进行每一步的操作时,就会有点不知所措,不知道从那开始。在进行网上查询时,和自己的有些许不同,自己就手足无措,不知如何调整了。这就是对知识的应用能力不强。

  1. 眼高手低:

在前期准备中,准备不足,开始的时间较晚,匆匆忙忙的开始,所以导致前期分工较为混乱,两个人忙碌,其他人清闲,到作业后期人员工作分布有所调整,情况有所改善。

在此次作业完成中,我们会警醒自己的不足,在以后的学习和作业中有所改善,更加高效的完成自己的作业。我们的路还有很长,我们现在的能力还是很有限的。我们必定会将自己能力,淋漓尽致的贡献在自己的任务中。

八、ui代码及数据库文件

       详细代码文件可联系博主【大三🐕】

       数据库及UI界面完善,费时一周打造,代码较为规范化

        喜欢的话麻烦点个关注

  • 16
    点赞
  • 120
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
学生学籍管理系统数据库系统) 1 设计内容和要求 1。1设计背景 随着我国教育体制改革的深入进行,教育系统得到了前所未有的发展.学生管理正在 逐步迈向管理信息现代化。但是我国的学生管理信息化水平还处在初级阶段,主要表现 在对学生的交费管理、学生的档案管理还是采用原有的人工管理方式。学校的规模不断 扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。由于大学生类别和专业的 设置的多样化,大学生的学籍管理历来是非常繁琐和复杂的的工作。面对庞大的信息量 , 这时的人工管理几乎无法实现,在这种情况下用数据库进行管理变的尤为必要,这可以 发挥计算机的优势,就需要有学生信息管理系统来提高学生管理工作的效率.通过这样的 系统,可以做到信息的规范管理,科学统计和快速的查询,从而减少管理方面的工作量和 减少人为的错误. 1.2开发环境 本学生学籍管理系统数据库系统)的开发与运行环境如下: 开发环境:Windows XP 辅助工具:PowerDesigner Trial 11 数据库管理系统:SQL Server 2000 运行环境:Windows 2000/XP/2003 1。3内容和要求 1.3。1系统目标设计 使得学生的学籍管理工作更加清晰、条理化、自动化。 很容易地完成新生信息的输入、老生信息的备份、毕业学生的信息可以很容易地 保存. 当学生需要查询成绩时,可以很简单地将其需要的信息从数据库中查找出来并可 以打印查询结果。 随着当今网络技术的发展,提供网络在线查询功能,可以为毕业生提供更多的就 业机会. 1.3。2系统功能要求 (1)学生基本信息系统 能够完成新、老生信息的输人、修改、插人、删除等工作。 可以按照特定的信息进行查找,并按照特定的要求进行排序。 可以对老生的信息进行备份,以便日后查询。 可以对学生的信息进行打印输出。 提供详细的帮助文件和系统维护功能。 (2)学生成绩管理系统 此部分的功能如下: 学生成绩的输入、修改、删除等基本操作。 成绩的综合统计功能,包括学生成绩按照不同条件进行排名。管理人员可以选择 不同的排序条件,并可以将排序结果进行打印输出. 计算各班的总分和平均分,并按照平均分将各班成绩进行排序。 统计不及格考生的信息,根据条件确定是重修还是补考。 学生奖励统计,自动生成每班获得奖学金的同学的信息,并可以将奖学金分成不 同的等级,以及所得奖学金的数目。 本系统可以在单机上运行,也可以应用在网络上供在线查询成绩和其他一些学生 的信息(此功能选做人提供给学生进行查询的系统和提供给教务处使用的系统, 在不同用户使用时,应该会有不同的使用权限。 提供详细的帮助文件。 由于数据库内的信息会很多,注意数据库表格设计,使得学生查询基本信息或学习成 绩时使用时间较短。按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计 、物理结构设计。 系统的功能模块设计图如图所示. 图 1-1 系统功能模块设计图 2 需求分析 2。1 引言 进行数据库设计首先必须准确了解也分析用户需求(包括数据和处理)。目的是为学 籍管理数据库系统的设计打下牢牢的基础,是数据库开发的重要文件依据,主要为数据 库设计人员使用,是用户和系统分析员的项目依据文件。作为"地基"的需求分析是否做 得充分与准确,它决定了在其上构建数据库大厦的速度和质量。需求分析做得不好,甚 至会导致整个数据库设计返工重做。 本系统的开发是设计一个学生学籍管理系统数据库系统)。 2.2 用户需求 本系统是针对高等院校的学生学籍管理,因此学籍管理系统的用户包括系统管理员、 教师和学生。主要涉及系部信息、班级信息、任课教师信息、学生信息、课程信息以及 选课记录和成绩等多种数据信息。 实现的具体功能如下: 基本信息管理——系统管理员负责对各种基本信息的录入、修改、删除等操作. 学生成绩管理-- 系统管理员负责对学生成绩的录入、修改、删除等操作,学生可以查询各科成绩 。 信息查询统计——学生可以查询基本信息和各科的考试成绩,老师可以查询基本信息 和授课信息,系统管理员负责把老师提交的学生成绩进行管理,计算总成绩和平 均成绩,统计不及格学生信息和获得奖学金学生的信息,最后再输出所有的信息 。 毕业生信息管理-- 系统管理员负责计算毕业学生在学校期间所修课程的总学分,并进行审核,最后 输出登记表和名册. 系统用户管理-—系统管理员负责用不同的权限来限制不同用户对系统的使用. 以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,查询速 度要快,比较小的冗余,易维护,具有较高的数据安全性。 2。3 划分功能模块 根据系统功能的需求分析和高等院校学籍管理的特点,经过模块化的分析得到如下图 1—1所示的系统功能模块结构图. 图 2—1 系统功能模块图 2。4 数据字典 2.4。1
学生学籍管理系统需求分析报告 §1 概述 编写说明: 本章描述本软件开发的背景,系统目标,用户的业务情况,以便于需求理解。 § 1.1背景 传统的学校学籍管理方法、由于分散管理,易发生数据丢失,劳动强度高,速度慢。使用计算机可以高速、快捷地完成以上工作。特别是在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。学籍管理信息系统以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,从而全面提高教学质量。 § 1.2系统目标 学籍管理信息系统以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。 § 1.3业务模式 本系统是运行在WindowsXP等操作系统环境下的多台计算机构成的局域网, 现在学校各部门分别使用不同数据库,各部门之间的信息还不能实现网上共享。由于学校的各个部门都需要一些学生的基本信息,所以各个部门都有一份学生档案。一个部门的改动,将导致其他各部门必须修改,否则,学生的信息将不一致。 高校学生学籍管理系统将采用B/S模式,学生的信息由各用户在规定的权限下在各自的工作站上录入,统一保存在系统服务器上,既可集中管理,有可让各部门管理自己负责的信息。信息上网后各用户可查询,调用,达到全校信息共享。 §2用户需求 编写说明: 此系统专门为高校学籍管理所设置。本节主要描述用户需求的使用范围,功能要求信息采集与各部门的使用权限 § 2.1使用范围 按西安交通大学城市学院学生学籍状况的系统管理(本科生用学年学分制)。 系统中保留4个年级学生的信息,学生毕业一年后信息转储,但随时可以查询,输出。 § 2.2功能要求 •学生档案管理: 学生的一般情况,及奖励,处分情况; •学生成绩管理: 学习成绩,补考成绩; •学籍处理: 学生留降级处理,休复学处理,退学处理; •日常教务管理: 日常报表,如通知书,补考通知书等,学生学习成绩的各种分类统计; •毕业生学籍处理: 结业处理,毕业处理,授位处理,学籍卡片等。 § 2.3信息采集与各部门的使用权限 每学期考试完毕由各系录入成绩,然后由教务科收集。为了信息的安全和数据的权威性,对于网上信息的使用权限和责任规定如下: 数据收集前的系统权限 学生档案 学生奖惩 学生成绩 学籍处理 补考成绩 教学计划管理 各种等级考试 学生工作处 0 ? 0 ? ? ? ? ? ? 各系 ? ? 0 ? ? ? ? ? 教务科 ? ? ? 0 ? 0 ? ? 0 ? 师资科 ? ? ? ? ? 0 ? ? 院长办公室 ? ? ? ? ? ? ? 注:0、登录,修改,处理权。 ?、查询权 § 2.4数据完整性、正确性: 1、 可按某学生某学年考试及补考成绩,自动生成该学生是否升留降级,退学。 2、 可按某学生在校期间累计重修科目门数和成绩自动生成该学生是否结业,毕业,授位。 3、 可按某学生因非成绩原因所引起的学籍变更作自动处理。 4、 可按每学期各年级班学生考试成绩自动生成补考名单,科目。 5、 可按每学期各年级学生考试成绩自动生成某课程统计分析表。 6、可按同一年级学习成绩进行同一课程不同班级间成绩比较 § 2.5 性能需求 因为学籍管理系统存储学生信息,所以数据库系统应该具有备份和恢复功能,保证学生数据库的长期完整性和正确性。另一方面,作为系统的服务器应该能够长期无故障的运行,而且能够便于管理员的操作。安全性要求比较高,对业务逻辑必须封装,避免有人登陆他没权限的网页,避免黑客从数据流中截取敏感数据。 § 2.6 其他需求 普通用户的需求:对于只有查看权限的用户,一般是通过上网浏览学校网页来查看数据的。 各部门管理员:能够对系统进行设置,以适应不同用户的需求。对不同系的管理员分配不同的权限,教务处系统管理员具有最高的管理权限。 § 2.7用户平台要求 系统主要使用于高校的局域网, WinXP等环境下,Java,Vc,Vb连接数据库,本系统需要DBMS放学生学籍数据库。可进行查询,修改、处理等。 §3 业务逻辑和数据流图 本系统暂不考虑与其他系统交换数据,而是作为一个独立的系统。但是,他应该能够向学校的上级主管部门提交学生的信息。 § 3.1业务流程与业务逻辑

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值