数据库高校教务管理系统方案
高校教务管理系统设计与实施

高校教务管理系统设计与实施随着社会的发展和教育改革的深入,高校教务管理系统逐渐成为高校教务工作中不可或缺的一部分。
教务管理系统的设计与实施是为了提高教育教学质量,提升高校教务工作效率,实现教务管理的科学化、规范化和信息化,满足高校教务工作的需求。
本文将围绕高校教务管理系统的设计与实施展开探讨。
一、高校教务管理系统的设计1. 功能模块设计:根据高校的教务管理工作需求,设计教务管理系统的功能模块,并确定各个模块之间的关系和数据流向。
主要包括学生管理模块、教师管理模块、课程管理模块、教务排课模块、考试管理模块等。
2. 数据库设计:建立适应高校教务工作特点的数据库,包括学生信息、教师信息、课程信息、教学计划、排课信息、考试成绩等。
数据库的设计应考虑到数据的完整性、一致性和安全性,确保数据的准确性和可靠性。
3. 界面设计:设计简洁、直观、友好的界面,使用户能够方便地查看和操作系统功能。
注意界面的美观性和易用性,尽量减少操作的复杂性,提高用户的工作效率。
4. 系统安全设计:加强系统的安全性,采取适当的安全措施,如权限控制、身份认证、数据加密等,保护教务管理系统的安全,防止信息泄露和非法访问。
二、高校教务管理系统的实施1. 系统建设准备:在实施前,需进行系统建设的准备工作。
包括确定实施目标和任务、制定实施计划和时间表、明确系统实施的组织和人员负责等。
2. 系统实施过程:根据系统设计的要求,进行系统的开发和实施。
包括软件的编写、数据库的建立、系统的测试和调试等。
在实施过程中,需要根据实际情况进行适当的调整和修改,确保系统的正常运行。
3. 培训与推广:在系统实施完成后,需要进行教师和相关工作人员的培训,使其能够熟练地使用教务管理系统。
此外,还需进行系统的推广和宣传,提高教师和学生的使用意识和积极性。
4. 系统运维与优化:教务管理系统的实施并不是一次性的工作,还需要进行系统的运维和优化。
包括系统的日常维护、问题处理和升级更新等,保证系统的稳定性和可持续性发展。
教务管理系统数据库设计

教务管理系统数据库设计教务管理系统数据库(SQL Server 2008 + delphi7) 实验报告班级:7姓名:787学号:787指导教师:完成日期:目录第一章系统概述 (3)第二章系统分析 (3)第三章系统设计 (4)第四章系统功能 (9)第五章系统实现 (9)第六章源程序附录 (15)第七章第二章系统分析1、问题定义随着科学技术的不断提高,计算机科学日渐成熟,其强大功能已为人们深刻认识,它已进入人们生活的各个领域,并发挥了越来越重要的作用,针对人工管理的缺点,最好的解决办法就是借助计算机技术提供一个电子化的学生信息管理平台。
为了更好地管理学生和教职工的资料文档,我开发一个软件工程学生信息管理系统。
教师和学生可以应用该系统实现如下功能:1、可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等。
教师:工号、姓名、性别、职称、工龄、出生年月、基本工资等。
学生:学号、姓名、性别、年龄等。
2、为简单起见教师与学生区分系别,而课程不分系,课程需反映如下信息:课程、课程名、课时数、必修课、学分。
3、学生入学时新生需录入登记,登记后即可选课学习课程(一学期约20学分)。
4、一门只由一位教师上,一位教师可上多门课,满30人才开课。
5、学生选每门课有个成绩,若成绩不及格则补考后还需记录补考成绩。
1)在某数据库管理系统中建立各关系模式对应的库表,并设计所需的视图、索引等。
2)能对各库表进行输入、修改、删除、添加、查询、打印等基本操作。
3)新生入校登记后可即时选课,老生每学期开始前可选课或作选课调整,一般要选共约20学分的若干门课程。
4)能明细查询某学生的选课情况及某课程的选修学生情况。
5)能统计查询出某学生的成绩单(包括总成绩、平均成绩、不及格门数等)及某门课的选课人数、最高分、最低分、平均成绩等统计信息。
6)能分析出某教师的教学质量情况(可根据该教师所任所有课优良数平均超过一定百分比来粗略评定)。
数据库教务管理系统课程设计

华北科技学院计算机系综合性实验实验报告课程名称《数据库原理与应用》实验学期 2012 至 2013 学年第 1 学期学生所在系部计算机学院年级 2010 专业班级计算机B10-3班学生姓名学号任课教师郭红实验成绩计算机系制《数据库原理与应用》综合性实验报告开课实验室:软件开发实验室(一) 2012 年 12月 7 日Course(Cno,Cn, Cs,Ct)(2)设计合适的视图视图v1:create view v1(Sno,Sn,总学分,未修学分)asselect,,sum(Cs),24-sum(Cs)from SC,Course,Studentwhere=and=and>=60group by,统计学生得到学分的情况,这样学生可以很清楚的看到自己所得到的学分的情况,能够时刻提醒自己还差多少分才修完课程,能够保证自己毕业前完成学业。
视图AvgS:学生可以直接查询自己的各科平均成绩。
create view AvgS(Sno,Sn,AvgScore)asselect,,avg(Score)from SC,Studentwhere=group by,4.物理设计create unique index SCI on SC(Sno,Cno)执行此命令后,为SC表建立一个索引名为SCI的唯一索引,此索引为Sno和Cno两列的复合索引,即对SC表中的行先按Sno的递增顺序索引,对于相同的Sno,又按Cno的递增顺序索引。
系统本身已经有的索引是Student表是按照学号升序建立的唯一索引,Teacher表是按照职工号序建立的唯一索引,Course表是按照课程号的升序建立的唯一索引。
5.数据库的实现(1)创建库、表应包括参照完整性、实体完整性、自定义完整性的定义create table Student(Sno char(10)primary key not null,Sn varchar(20)not null,Sex char(2)check(Sex in('男','女')),Dept varchar(20),Major char(20),Age int,Grade int,)create table Course(Cno char(8)primary key not null,Cn char(10),Ct int,Cs int,)(2)创建用户包括创建用户或角色,并授予相应的权限(用户设计至少3个,且设置合理)我为数据库创建了三个用户,分别是海艳,郭跃,系统管理员,对应的登录名分别是学生,老师,系统。
数据库课程设计--学校教务管理系统

学校教务管理的数据库设计I.需求分析:随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。
面对庞大的信息量,就需要有学生教务信息管理系统来提高学生管理工作的效率。
通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
学校为方便教务管理,需开发一个教务管理系统。
为便于学生,老师,教务管理人员信息查询,注册以及信息修改,学校把学生的信息,包括姓名、性别、年龄,成绩等信息输入教务管理系统的数据库,然后在管理终端可以对数据进行查询和修改操作。
要求系统能有效、快速、安全、可靠和无误的完成上述操作。
并要求系统界面要简单明了,易于操作,程序利于维护。
一、信息分析:(1)学校教务管理的数据库,包含以下信息:学校有若干个系,每个系有若干名教师和学生,每个教师可以担任若干门课程,并参加多个项目,每个学生可以同时选修多门课程,每门课程每学期可能有多名教师教授,课程分为必修、选修、任选三种。
(2)学校的教务管理的信息包括:学生姓名、学号、班级、性别、班号,籍贯、出生日期、所属系编号、所属系名称、系主任,教师编号,教师姓名,教师职称,教师所授课程、课程编号,课程名,课程学分,项目编号,项目名称,项目负责人,学生选修课程及成绩。
学生如果课程及格,可以取得该课程的学分。
学生的各类型课程学分和总学分累计到一定程度,学生可以毕业。
根据成绩高低,可以计算学分积。
及格学生的学分积公式:课程学分积=(该课程成绩-50)/10×该课程学分。
二、功能分析:(1)用户能够使用友好的图形用户界面实现对系、班级、学生、教师、课程、选课等内容进行增、删、改,以及对信息的查询。
对于查询要实现比较强大的功能,包括精确查询、模糊查询以及统计查询。
(2)具体查询在数据库中要实现以下的功能:1)所有来自某省的男生2)所有某课程成绩>90的同学3)教授某课程的老师4)某班年龄最大的5名同学5)某年以后出生的男同学6)选修某课程的学生及其成绩7)没有授课的教师8)某学生所选课程的总学分9) 教授某学生必修课程的老师情况 10)某学生选修了哪些系的课程 11)某系学生所学的所有课程12)按总学分找出某系学习最好的5名同学 13)按总学分积找出某系学习最好的5名同学 14)可以毕业的学生三、软、硬件配置 程序运行的环境:具体运行环境为软件方面,操作系统为windows2000/XP ,并且系统装有SQL Server2000数据库管理系统。
数据库教学管理系统课程设计报告

数据库教学管理系统课程设计报告一、项目背景数据库教学管理系统是一种用于管理学校教学信息和学生数据的系统,通过该系统可以方便地管理学生信息、教师信息、课程信息等数据,并支持教务管理、成绩管理、课程安排等功能。
该系统可以提高教学管理效率,实现教学信息的自动化管理,是现代教育管理的重要工具。
二、需求分析1.功能需求•管理学生信息,包括学生基本信息、选课情况等;•管理教师信息,包括教师基本信息、授课情况等;•管理课程信息,包括课程名称、上课时间、上课地点等;•支持教务管理,包括学生选课、成绩录入等功能;•支持课程安排,包括课程表生成、教师排课等功能。
2.性能需求•系统要求稳定可靠,能够处理大量数据;•系统响应速度快,能够快速查询数据;•系统安全性高,能够保护学生和教师信息不被泄露。
三、系统设计1.数据库设计系统采用MySQL数据库,包括以下表格设计: - 学生表(Student):存储学生基本信息,包括学号、姓名、性别等字段; - 教师表(Teacher):存储教师基本信息,包括工号、姓名、职称等字段; - 课程表(Course):存储课程信息,包括课程编号、课程名称、学分等字段; - 选课表(Enrollment):存储学生选课情况,包括学生学号、课程编号等字段; - 成绩表(Grade):存储学生成绩信息,包括学生学号、课程编号、成绩等字段。
2.系统架构设计系统采用B/S架构,前端使用HTML、CSS、JavaScript实现,后端采用Java 语言开发,并采用Spring框架实现业务逻辑,数据库连接采用JDBC连接MySQL 数据库。
四、系统实现1.前端实现前端页面采用响应式设计,包括学生信息管理页面、教师信息管理页面、课程信息管理页面等,使用Bootstrap框架实现页面布局,并通过AJAX与后端交互。
2.后端实现后端采用MVC架构,包括控制器层、服务层、数据访问层,使用Spring MVC 和Spring JDBC框架实现,对前端请求进行处理并访问数据库。
(完整word版)数据库课程设计教务管理系统

洛阳理工学院课程设计报告课程名称数据库课程设计设计题目教务管理系统专业计算机科学与技术班级学号姓名完成日期课程设计任务书设计题目:教务管理系统设计内容与要求:设计教务管理系统,类似于我校教务管理系统,有四类用户:教务员、学生、教师、管理员教务员可以输入学生、教师、班级、课程信息。
一个班级只属于一个专业,一个学生只属于一个班级。
教务员负责输入每个专业、每个班级需要学习哪些课程,指定课程的任课教师。
教师可以查看学习该课程的学生名单。
课程结束后,教师可以录入课程成绩。
一个教师可以教授多个班的多门课程,每门课由多位老师讲授。
课程分两类,必修课和选修课。
系统要记录每个学生学习各门必修课的成绩,还要记录学生选修了哪些选修课以及课程成绩。
学生可以查看自己各门课程的成绩。
学生还可以进行评教,给老师打分。
管理员可以输入教室信息,并结合班级、课程、教室信息实现自动排课。
要求:1.完成本系统的需求分析,写出功能需求和数据需求描述;2.完成数据库的概念结构设计、逻辑结构设计、物理结构设计;3.完成本系统的部分功能模块的程序界面设计。
指导教师:2017 年12 月29 日课程设计评语成绩:指导教师:_______________年月日目录一、概述 (2)1.1、本设计的目的与意义 (2)1.2、数据库开发工具和应用程序开发工具 (2)二、需求分析 (2)2.1功能需求 (2)2.2数据需求 (2)三、概念结构设计 (2)3.1、E-R模型设计 (2)3.2、总体E-R图描述 (4)四、逻辑结构设计 (4)4.1、关系模型 (4)4.2、关系模式的优化与说明 (4)五、物理结构设计 (5)5.1建立数据库 (5)5.2表与表结构 (5)六、应用程序设计 (6)6.1、系统总体结构 (6)6.2、系统界面与源代码 (7)6.2.1、界面 (8)6.2.2、功能描述 (9)6.2.3、程序源代码 (10)七、设计总结 (23)一、概述本系统后台数据库采用Microsoft SQL Server 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2010作为主要开发工具,可与SQL Server 2008数据库无缝链接。
3高校教务管理系统数据库设计

高校教务管理系统数据库设计1.1 数据库数据库是实现有组织地,动态地存储大量关联数据,方便多用户访问的计算机软硬件组成的系统;它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。
由于本软件的整体结构比较简单,所涉及数据相对来说也较少,组成文件的最小单位是记录。
1.2设备奔腾1g、内存128兆以上的计算机,局域网络环境。
1.3需求注释对于本软件,它的功能需求、性能需求、接口需求,从稳定性、可行性上都是可以的。
1.4功能树2 概念设计2.1 实体及其属性2.1.1 学生实体E-R图2.1.2 课程实体E-R图2.1.3 教师信息E-R图2.1.4综合ER图3 逻辑设计3.1 规范化得到最终的关系模式学生信息基本表(学号,姓名,性别,学院名称,班号,联系电话,入校日期,家庭住址),主码为学号,符合三范式。
课程信息表(课程编号,课程类型,分数)主码为课程编号,符合三范式。
教师信息表(教师编号,姓名,所在科室,联系电话)主码为教师编号,符合三范式。
考试信息表(学号,课程编号)主码为学号,课程编号,符合BCNF。
讲授信息表(教师编号,课程编号)主码为教师编号,课程编号,符合BCNF。
3.2 学生基本信息表3.3 课程信息表3.4 教师信息表3.5 考试信息表3.6 讲授信息表4 物理结构设计4.1物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。
4.2 建立数据表4.2.1 学生信息基本表的建立:CREATE TABLE Student( Sno CHAR ( 8 ) PRIMARY KEY ,Uname CHAR ( 8 ) UNIQUE,Sex CHAR ( 2 ),Sdept(8 ),Classno ( 8 ),Connect tel ( 11 ),Enter date (8 ),Family add (50 ));4.2.2 课程信息表的建立:CREATE TABLE Course( Course code CHAR (20 ) PRIMARY KEY ,Course type CHAR ( 8 ) ,Course grade CHAR ( 8)) ;4.2.3 教师信息表的建立:CREATE TABLE Teacher( Tno CHAR ( 8 ) PRIMARY KEY ,Tname CHAR ( 8 ) UNIQUE,Tdepartment(8 ),Tmoible( 11 ),);4.2.4考试信息表的建立:CREATE TABLE Exam( Sno CHAR ( 8 ) ,Course code CHAR (20 ) ,PRIMARY KEY ( Sno , Course code ) ,FOREIGN KEY ( Sno ) REFERENCES Student ( Sno ) ,FOREIGN KEY (Course code) REFERENCES Course (Course code));4.2.5讲授信息表的建立:CREATE TABLE Teaching( Tno CHAR ( 8 ) ,Course code CHAR (20 ) ,PRIMARY KEY (Tno , Course code ) ,FOREIGN KEY (Tno ) REFERENCES Teacher (Tno ) ,FOREIGN KEY (Course code) REFERENCES Course (Course code) );5 其他数据库对象的设计5.1 索引CREATE UNIQUE INDEX Stusno ON Student(Sno)CREATE UNIQUE INDEX Couno ON Course(Cno)CREATE UNIQUE INDEX Teano ON Teacher(Tno)5.2 视图CREATE VIEW IS_StudentASSELECT Sno,Sname,SdeptFROM StudentWhere Sdept=’IS’;2.2CREATE VIEW BTEACHERASSELECT Tname,TdepartmentFROM Teacher;5.3 触发器CREATE Trigger Delete _CourseBEFORE UPDATE ON CourseFOR EACH ROWAS BEGINIF(new.grade<60)THEN new.grade=nopass;END IF;END;5.4 存储过程CREATE procedure createetablesASCREATE table user 1(Uid int,Uname char(20)INSERTINTO use 1(Uid,Uname)V ALUES ('1','小明');)6 备份及恢复策略针对不同的故障,制定恢复策略数据库系统可能发生各种各样的故障,大致可以分为以下几类:1)事务内部故障2)系统故障3)介质故障4)计算机病毒要保证数据一致性是对数据库的最基本的要求。
教务管理系统数据库设计

教务管理系统目录教务管理系统 (1)1、工程方案 (2)工程背景: (2)系统开发目的: (2)定义: (2)2、详细分析 (2)、系统功能 (2)、系统构造 (3)、数据流图 (3)、户类型与职能 (4)、系统环境需求 (5)3、系统概念设计 (5)4、逻辑设计 (6)系统关系模型 (6)系统数据库表构造 (6)5、源码 (9)6、小结 (14)1、工程方案工程背景:教务系统管理平台充分利用互联网络B/S管理系统模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个账号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统.系统开发目的:提高学生,教师管理和操作事务的运作效率。
定义:学生选课和教师评分必须在管理员的设置条件下进展。
2、详细分析、系统功能设置学期时间:管理员登录系统后设置学期的时间,只有当时间为某个状态时,其他角色例如教师,才能做某些事情。
学期时间只能由角色管理员操作:包括对学期时间表的增加,删除,对某个学期时间状态的改变。
学生选课:当管理员设置为学期开场时,学生可以选课,学生选课受学分影响,只能选择总学分为多少的课程。
教师评分:当管理员设置为学期评分时,教师才可以评分。
个人信息管理:对自己个人信息进展添加和修改。
成绩查询:学生可以对自己成绩进展查询。
个人课表查询:按时间的不同,每个角色都有自己不同的课表。
2.2、系统构造功能描述:学生选课和教师评分必须在管理员设置学期的条件下进展。
、数据流图顶层图0层图2.4、户类型与职能〔1〕管理员:对学期设置的管理每个阶段有不同的功能。
〔2〕教师:对选修了自己课程的学生评分。
〔3〕学生:选修科目。
2.5、系统环境需求系统模式本系统采用B/S模式作为开发模式硬件环境效劳器端:高性能的计算机一台,普通的双绞线作为连接。
客户端:普通的计算机或者工作站,普通的双绞线作为连接。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目高校教务管理系统学生姓名xxxxxx学号xxxxxxxxxxxx专业班级xxxxxxxxxxxxxxxxxxxxx目录一、问题分析-------------------------------------------------------------------31、设计背景------------------------------------------------------------------32、运行环境------------------------------------------------------------------3 二、需求分析---------------------------------------------------------------------31、用户需求------------------------------------------------------------------42、系统主要功能------------------------------------------------------------43、系统总框架图------------------------------------------------------------6三、结构设计---------------------------------------------------------------------61、数据字典------------------------------------------------------------------62、概念结构设计E-R图-------------------------------------------------12四、系统代码实现(PowerBuilder环境)---------------------------------151、SQL Server 2008创建表格代码--------------------------------------152、PowerBuilder环境数据库连接代码---------------------------------223、运行结果-----------------------------------------------------------------24一、问题分析1、设计背景教务管理系统是高等学校教育工作的一项重要内容,是整个学校学校管理的核心和基础。
教务管理工作是指学校管理人员按照一定的教育方针,运用先进的管理手段,组织、协调,指挥和指导各方面人员的活动,以便高效率、高质量地完成各项教学任务,完成国家所制定的教育目标。
教务管理工作是学校教学工作的中枢,是保证高等教学机制正常运转的枢纽,它是一项目的性、计划性、适应性、创造性和科学性很强的工作。
教务管理工作关系到高等教学秩序的稳定和教学质量的提高,关系到搞笑的发展和人才的培养,教学管理在高校中占有相当重要的地位。
随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统的教务管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成教学管理工作。
提高教务管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。
同时,运用先进的信息技术,开发高校综合教务管理系统,是深化教务体制改革的有力措施。
要全面理解高校教务管理系统的需求,首先需要了解高校教务管理的内容、方法和流程等知识。
2、运行环境本学生学籍管理系统(数据库系统)的开发与运行环境如下:开发环境:Windows 7辅助工具:SQL Server 2008数据库管理系统:PowerBuilder 9.0运行环境:Windows 7/xp二、需求分析进行数据库设计首先必须准确了解也分析用户需求(包括数据和处理)。
目的是为教务管理数据库系统的设计打下牢牢的基础,是数据库开发的重要文件依据,主要为数据库设计人员使用,是用户和系统分析员的项目依据文件。
作为“地基”的需求分析是否做得充分与准确,它决定了在其上构建数据库大厦的速度和质量。
需求分析做得不好,甚至会导致整个数据库设计返工重做。
1、用户需求本系统是针对高等院校的教务管理系统,因此教务管理系统的用户包括学生和课程。
主要涉及系部信息、班级信息、学生信息、课程信息以及选课记录和成绩等多种数据信息。
实现的具体功能如下:●基础维护:1、班级信息维护2、学生信息维护3、课程信息维护●教学管理:1、学生选课管理2、课表查询3、成绩输入●报表打印——打印成绩单以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,查询速度要快,比较小的冗余,易维护,具有较高的数据安全性。
2、系统主要功能(1)班级信息维护界面能够完成学校各个班级所有基本信息的输人登记,所有班级信息的修改、插人、删除等工作。
可以按照特定的信息进行查找,并按照特定的要求进行排序。
提供一定的帮助文件和系统维护功能。
(2)学生信息维护界面能够完成学生所有基本信息的输人登记,所有学生信息的修改、插人、删除等工作。
可以按照特定的信息进行查找,并按照特定的要求进行排序。
提供一定的帮助文件和系统维护功能。
(3)课程信息维护界面能够完成学校不同专业课程信息的录入,包括任课老师的信息。
还可以对课程信息进行修改、删除等操作。
可以按照课程编号、课程名称、拼音码进行查询,相应的课程的信息会出现在窗口界面。
(3)学生选课界面此部分的功能如下:学生根据自己的学号、姓名、年级进行选课。
可以通过课程拼音、课程名称、课程编号和课程序号对课程信息进行查询,然后会出现所选课程的基本信息。
通过该界面既可以实现选课功能,还可以实现删课功能。
(4)课表查询界面学生根据自己的学号、姓名、年级进行选课可以查到自己所选课程的详细上课时间。
(5)学生成绩输入界面当选课结束时,教师可以根据课程编号查询其所教授的课程,然后给学生输入一定的成绩,然后提交。
(6)打印成绩单界面可以根据学号打印学生相应的成绩。
由于数据库内的信息会很多,注意数据库表格设计,使得学生查询基本信息或学习成绩时使用时间较短。
按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计。
3、系统总框架图三、结构设计1、数据字典(1)数据项数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,教务管理的主要数据见下表。
班级信息表成绩表籍贯代码表课程表课程信息表民族代码表选课表学籍代码表学生信息政治面貌代码表数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或若干个数据项和数据结构混合组成。
经过数据项和用户需求的分析,我对本系统一共分了5个组,具体如下表所示:系统流程图:数据流是数据结构在系统内传输的路径。
通过对用户的需求分析,以及数据项和数据流的设计,得出了相应的数据流描述如下表所示:数据流定义表数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
经过数据项、数据结构和数据流的设计,本系统一共选用了三个数据存储,具体对数据存储的描述通常如下表所示:数据存储处理过程的具体处理逻辑一般用判定表或判定树来描述。
对于本系统用于高校教务管理系统一共设计了三种处理方法,具体处理方式如下表所示:处理过程2、概念结构设计的E-R图图3-1 学生实体E-R图图3-2 课程信息实体E-R图图3-3 选课表实体E-R图图3-4 课程表实体E-R图图3-5 成绩表实体E-R图在基础维护系统中存在这样的关系:学习(一个学生只能在一个班级学习,而一个班级可以供多个学生学习,故是多对一的关系)。
图3-5学生关系E-R图在教学管理中存在这样的关系:选课(一个学生可以选择多门课程,而一门课程可以供多个学生选择,故是多对多的关系)图3-6 选课关系E-R图3.对于报表统计,我们可以将成绩单实体抽象出来。
图3-7课程实体E-R图以上是本系统中的基本的实体和关系,本系统是将其分步找出来加以描述,下面是本系统总体的E-R图:图3-8学籍管理系统E-R图四、系统代码实现(PowerBuilder环境)1、SQL Server 2008创建表格代码(1)建立班级信息表格:CREATE TABLE[dbo].[班级信息]([班级编号][varchar](14)NOT NULL,[年级][varchar](4)NULL,[班级名称][varchar](30)NULL,[班级简称][varchar](16)NULL,[人数][numeric](3, 0)NULL,[班主任][varchar](8)NULL,CONSTRAINT[PK_班级信息]PRIMARY KEY CLUSTERED([班级编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](2)建立成绩表格:CREATE TABLE[dbo].[成绩表]([编号][int]IDENTITY(1,1)NOT NULL,[学号][varchar](14)NOT NULL,[课程编号][int]NOT NULL,[成绩][int]NOT NULL,[考试次数][int]NULL,[是否补修][varchar](2)NULL,[是否重考][varchar](2)NULL,[是否已确定成绩][varchar](2)NULL,CONSTRAINT[PK_成绩表]PRIMARY KEY CLUSTERED([编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](3)建立籍贯代码表格:CREATE TABLE[dbo].[籍贯代码表]([籍贯编号][varchar](2)NOT NULL,[籍贯][varchar](18)NULL,CONSTRAINT[PK_籍贯代码表]PRIMARY KEY CLUSTERED([籍贯编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](4)建立课程表格:CREATE TABLE[dbo].[课程表]([编号][int]IDENTITY(1,1)NOT NULL,[课序号][varchar](14)NOT NULL,[课程编号][int]NOT NULL,[上课时间天][int]NOT NULL,[上课时间节][int]NOT NULL,[上课地点][varchar](20)NOT NULL,CONSTRAINT[PK_课程表]PRIMARY KEY CLUSTERED([编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](5)建立课程信息表格:CREATE TABLE[dbo].[课程信息]([课程编号][int]NOT NULL,[课程名称][char](40)NOT NULL,[课程简称][char](40)NOT NULL,[拼音码][char](6)NULL,[本学期课程][char](2)NOT NULL,[教师][char](10)NULL,[开课系别][char](30)NULL,[学分][int]NULL,CONSTRAINT[PK_课程信息]PRIMARY KEY CLUSTERED([课程编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](6)建立民族代码表格:CREATE TABLE[dbo].[民族代码表]([民族编号][varchar](2)NOT NULL,[民族][varchar](18)NULL,CONSTRAINT[PK_民族代码表]PRIMARY KEY CLUSTERED([民族编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](7)建立选课表格:CREATE TABLE[dbo].[选课表]([编号][int]IDENTITY(1,1)NOT NULL,[学号][varchar](14)NOT NULL,[课序号][varchar](14)NOT NULL,CONSTRAINT[PK_选课表]PRIMARY KEY CLUSTERED([编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](8)建立学籍代码表格:CREATE TABLE[dbo].[学籍代码表]([学籍编号][varchar](2)NOT NULL,[学籍名称][varchar](8)NULL,CONSTRAINT[PK_学籍代码表]PRIMARY KEY CLUSTERED([学籍编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](8)建立学生信息表格:CREATE TABLE[dbo].[学生信息]([学号][varchar](14)NOT NULL,[姓名][varchar](8)NULL,[班级编号][varchar](14)NULL,[性别][varchar](2)NULL,[年级][int]NULL,[政治面貌编号][varchar](2)NULL,[民族编号][varchar](2)NOT NULL,[籍贯编号][varchar](2)NOT NULL,[身份证号][varchar](15)NULL,[学籍编号][varchar](2)NOT NULL,CONSTRAINT[PK_学生信息]PRIMARY KEY CLUSTERED([学号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](9)建立政治面貌代码表格:CREATE TABLE[dbo].[政治面貌代码表]([政治面貌编号][varchar](2)NOT NULL,[政治面貌][varchar](14)NULL,CONSTRAINT[PK_政治面貌代码表]PRIMARY KEY CLUSTERED([政治面貌编号]ASC)WITH (PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS= ON)ON[PRIMARY])ON[PRIMARY](10)创建主键及外键等表的约束ALTER TABLE[dbo].[学生信息]WITH NOCHECK ADDCONSTRAINT[PK_学生信息]PRIMARY KEY CLUSTERED([学号])ON[PRIMARY]GOALTER TABLE[dbo].[学籍代码表]WITH NOCHECK ADDCONSTRAINT[PK_学籍代码表]PRIMARY KEY CLUSTERED([学籍编号])ON[PRIMARY]GOALTER TABLE[dbo].[成绩表]WITH NOCHECK ADDCONSTRAINT[PK_成绩表]PRIMARY KEY CLUSTERED([编号])ON[PRIMARY]GOALTER TABLE[dbo].[政治面貌代码表]WITH NOCHECK ADDCONSTRAINT[PK_政治面貌代码表]PRIMARY KEY CLUSTERED([政治面貌编号])ON[PRIMARY]GOALTER TABLE[dbo].[民族代码表]WITH NOCHECK ADDCONSTRAINT[PK_民族代码表]PRIMARY KEY CLUSTERED([民族编号])ON[PRIMARY]GOALTER TABLE[dbo].[班级信息]WITH NOCHECK ADDCONSTRAINT[PK_班级信息]PRIMARY KEY CLUSTERED ([班级编号])ON[PRIMARY]GOALTER TABLE[dbo].[籍贯代码表]WITH NOCHECK ADD CONSTRAINT[PK_籍贯代码表]PRIMARY KEY CLUSTERED ([籍贯编号])ON[PRIMARY]GOALTER TABLE[dbo].[课程信息]WITH NOCHECK ADD CONSTRAINT[PK_课程信息]PRIMARY KEY CLUSTERED ([课程编号])ON[PRIMARY]GOALTER TABLE[dbo].[课程表]WITH NOCHECK ADDCONSTRAINT[PK_课程表]PRIMARY KEY CLUSTERED([编号])ON[PRIMARY]GOALTER TABLE[dbo].[选课表]WITH NOCHECK ADDCONSTRAINT[PK_选课表]PRIMARY KEY CLUSTERED([编号])ON[PRIMARY]GOALTER TABLE[dbo].[成绩表]ADDCONSTRAINT[DF_成绩表_成绩]DEFAULT (0)FOR[成绩] GOALTER TABLE[dbo].[学生信息]ADDCONSTRAINT[FK_学生信息_班级信息]FOREIGN KEY([班级编号])REFERENCES[dbo].[班级信息]([班级编号]CONSTRAINT[FK_学生信息_籍贯代码表]FOREIGN KEY([籍贯编号])REFERENCES[dbo].[籍贯代码表]([籍贯编号]),CONSTRAINT[FK_学生信息_民族代码表]FOREIGN KEY([民族编号])REFERENCES[dbo].[民族代码表]([民族编号]),CONSTRAINT[FK_学生信息_学籍代码表]FOREIGN KEY([学籍编号])REFERENCES[dbo].[学籍代码表]([学籍编号]),CONSTRAINT[FK_学生信息_政治面貌代码表]FOREIGN KEY ([政治面貌编号])REFERENCES[dbo].[政治面貌代码表]([政治面貌编号])GOALTER TABLE[dbo].[成绩表]ADDCONSTRAINT[FK_成绩表_课程信息]FOREIGN KEY([课程编号])REFERENCES[dbo].[课程信息]([课程编号]),CONSTRAINT[FK_成绩表_学生信息]FOREIGN KEY([学号])REFERENCES[dbo].[学生信息]([学号])GOALTER TABLE[dbo].[课程表]ADDCONSTRAINT[FK_课程表_课程信息]FOREIGN KEY[课程编号])REFERENCES[dbo].[课程信息]([课程编号])GO(11)创建存储过程create proc sf_成绩提交@courseid intasbegin tran-- 提交成绩,提交后不可以再修改update成绩表set是否已确定成绩='Y'where课程编号=@courseidand成绩>0commitGOSET QUOTED_IDENTIFIER OFFGOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_NULLS ONGOcreate proc sf_终止选课asbegin tran--应该单独有一个【终止选课】的功能,终止选课后生成空的成绩单--所有学生将不允许更改课程信息,如果需要更改,必须单独申请,特殊处理。