数据库高校教务标准管理系统样本
数据库设计实例—教学管理系统

数据库设计实例—教学管理系统教学管理系统(TMS)是一个基于数据库的信息管理系统,用于管理学校、教师和学生之间的各种信息。
该系统将教师、学生、课程、成绩等数据组织起来,并提供各种操作来管理和查询这些数据。
1. 学校表(School)-------------------------------------字段,类型,备注-------------------------------------ID , Integer ,学校ID名称, String ,学校名称地址, String ,学校地址-------------------------------------2. 教师表(Teacher)--------------------------------------------字段,类型,备注--------------------------------------------ID , Integer ,教师ID姓名, String ,教师姓名性别, String ,教师性别所属学校, Integer ,教师所属学校--------------------------------------------3. 学生表(Student)-----------------------------------------字段,类型,备注-----------------------------------------ID , Integer ,学生ID姓名, String ,学生姓名性别, String ,学生性别年级, String ,学生年级所属学校, Integer ,学生所属学校-----------------------------------------4. 课程表(Course)--------------------------------------------字段,类型,备注--------------------------------------------ID , Integer ,课程ID名称, String ,课程名称学分, Integer ,课程学分教师, Integer ,开课教师所属学校, Integer ,课程所属学校--------------------------------------------5. 成绩表(Grade)-------------------------------------------------------字段,类型,备注-------------------------------------------------------ID , Integer ,成绩ID学生, Integer ,学生ID课程, Integer ,课程ID分数, Float ,课程成绩-------------------------------------------------------上述表格是教学管理系统中的一部分,还可以根据系统需求进一步添加其他表格和字段。
数据库课程设计--学校教务管理系统

学校教务管理的数据库设计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数据库管理系统。
教务管理系统数据库设计-参考模板

教务管理系统数据库(SQL Server 2008 + delphi7)实验报告班级:7姓名:787学号:787指导教师:完成日期:目录第一章系统概述 (3)第二章系统分析 (3)第三章系统设计 (4)第四章系统功能 (9)第五章系统实现 (9)第六章源程序附录 (15)第七章参考文献 (73)第一章系统概述学校学生管理信息系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统(Management Information System)。
它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握学生的情况,为学生提供成绩跟课程方面的查询。
本系统是以delphi7编辑用户界面,以SQL server 2008为数据源后台而成的学生信息管理系统。
本系统是以计算机为基础,由人和计算机结合的对信息进行收集、存储、维护、加工、传递和使用的一种管理系统,其目的是使人流、物流、资金流和信息流处于最佳状态,以最少的资源投入获得最佳的综合效益。
本系统主要包括学生信息管理模块、教师信息管理模块、课程信息管理模块、成绩信息管理模块和系统维护模块等部分。
在校务管理中,为有关部门提供完整、综合、共享的信息,对于学校的教育管理、教务和科研等都有很大的实用价值。
第二章系统分析1、问题定义随着科学技术的不断提高,计算机科学日渐成熟,其强大功能已为人们深刻认识,它已进入人们生活的各个领域,并发挥了越来越重要的作用,针对人工管理的缺点,最好的解决办法就是借助计算机技术提供一个电子化的学生信息管理平台。
为了更好地管理学生和教职工的资料文档,我开发一个软件工程学生信息管理系统。
教师和学生可以应用该系统实现如下功能:1、可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等。
教务管理系统数据库文档

教务管理系统管理信息系统流程和架构咨询项目物理数据库设计文档Air (China) Company文档编号: 001当前版本号: 5最初发布日期: 2009-1-1最新修订日期: 2009-1-8⏹文档位置⏹文档修改历史版本号版本日期修改总结修订人1 2005-12-27 新建表,设置主外键王如玉2 2005-12-28 填写数据、文档编写、设计视图王如玉3 2005-12-29 存储过程来实现数据库的自动化王如玉⏹参考文档序号参考文档版本日期1.数据库应用技术V1.0 2009-1-12.数据库开发实例解析V1.0 2009-1-1目录1.物理数据库设计 (4)1.1数据库总体设计 (4)1.1.1 表空间规划 (4)1.1.2 数据库规划 (4)2.数据库表设计 (5)2.1实体列表( Entity List) (5)2.2E-R图 (5)2.2.1 < 后台管理E-R图> (5)2.2.2 <销售E-R图> ......................................................................................... 错误!未定义书签。
2.2.3 <商务E-R图> ......................................................................................... 错误!未定义书签。
2.3实体定义 (12)2.3.1 < pubinfo > (12)2.3.2 < pubcardinfo> (12)2.3.3 < continueinfo > (12)2.3.6 <productinfo > ........................................................................................ 错误!未定义书签。
教务管理系统 数据库实例设计

Microsoft ActiveX Data Object 17.6 Library
再选择“工程”菜单中的“部件”命令,从控件列表中选中如下选项:
Microsoft ADO Data Control 6.0(OLEDB)
Microsoft DataGrid Control 6.0(OLEDB)
sql = Trim$(sql)
Set conn = New ADODB.Connection
Set rst = New ADODB.Recordset
conn.ConnectionString = "DSN=KS;UID=sa;PWD=;"
conn.Open
Set rst.ActiveConnection = conn
图17.4 bzb表结构
3
该表用于存放本系统用户的信息。包括用户的用户名(最多10位)、密码(最多6位数字字符)和级别(只分“一般操作员”和“系统管理员”两类)。该表的结构如图17.5所示。
图17.5 oper表结构
17.4
本节介绍图17.2中各组成部分的实现方法。对于窗体,给出执行功能、设计界面、主要对象的属性和方法以及相关的事件过程。对于报表,给出执行功能和设计界面。对于数据环境,给出详细的设计步骤。
Public condstr As String'条件字符串
Public recs As Integer'保存记录集中记录个数
Public sel As Boolean
Public Function exesql(ByVal sql As String) As ADODB.Recordset
'用于执行用户给定的SELECT语句,返回对应的记录集
数据库-高校教务管理系统

题目高校教务管理系统学生姓名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、设计背景教务管理系统是高等学校教育工作的一项重要内容,是整个学校学校管理的核心和基础。
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)计算机病毒要保证数据一致性是对数据库的最基本的要求。
教务管理系统数据库设计

教务管理系统数据库(SQL Server 2008 + delphi7)实验报告班级:姓名:学号:指导教师:完成日期:目录第一章系统概述 (3)第二章系统分析 (3)第三章系统设计 (4)第四章系统功能 (9)第五章系统实现 (9)第六章源程序附录 (15)第七章参考文献 (73)第一章系统概述学校学生管理信息系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统(Management Information System).它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握学生的情况,为学生提供成绩跟课程方面的查询。
本系统是以delphi7编辑用户界面,以SQL server 2008为数据源后台而成的学生信息管理系统。
本系统是以计算机为基础,由人和计算机结合的对信息进行收集、存储、维护、加工、传递和使用的一种管理系统,其目的是使人流、物流、资金流和信息流处于最佳状态,以最少的资源投入获得最佳的综合效益。
本系统主要包括学生信息管理模块、教师信息管理模块、课程信息管理模块、成绩信息管理模块和系统维护模块等部分。
在校务管理中,为有关部门提供完整、综合、共享的信息,对于学校的教育管理、教务和科研等都有很大的实用价值。
第二章系统分析1、问题定义随着科学技术的不断提高,计算机科学日渐成熟,其强大功能已为人们深刻认识,它已进入人们生活的各个领域,并发挥了越来越重要的作用,针对人工管理的缺点,最好的解决办法就是借助计算机技术提供一个电子化的学生信息管理平台。
为了更好地管理学生和教职工的资料文档,我开发一个软件工程学生信息管理系统.教师和学生可以应用该系统实现如下功能:1、可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等。
教师:工号、姓名、性别、职称、工龄、出生年月、基本工资等.学生:学号、姓名、性别、年龄等。
- 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运行环境:Windows 7/xp二、需求分析进行数据库设计首先必须准确了解也分析用户需求(包括数据和处理)。
目的是为教务管理数据库系统的设计打下牢牢的基础,是数据库开发的重要文件依据,主要为数据库设计人员使用,是用户和系统分析员的项目依据文件。
作为“地基”的需求分析是否做得充分与准确,它决定了在其上构建数据库大厦的速度和质量。
需求分析做得不好,甚至会导致整个数据库设计返工重做。
1、用户需求本系统是针对高等院校的教务管理系统,因此教务管理系统的用户包括学生和课程。
主要涉及系部信息、班级信息、学生信息、课程信息以及选课记录和成绩等多种数据信息。
实现的具体功能如下:●基础维护:1、班级信息维护2、学生信息维护3、课程信息维护●教学管理:1、学生选课管理2、课表查询3、成绩输入●报表打印——打印成绩单以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,查询速度要快,比较小的冗余,易维护,具有较高的数据安全性。
2、系统主要功能(1)班级信息维护界面能够完成学校各个班级所有基本信息的输人登记,所有班级信息的修改、插人、删除等工作。
可以按照特定的信息进行查找,并按照特定的要求进行排序。
提供一定的帮助文件和系统维护功能。
(2)学生信息维护界面能够完成学生所有基本信息的输人登记,所有学生信息的修改、插人、删除等工作。
可以按照特定的信息进行查找,并按照特定的要求进行排序。
提供一定的帮助文件和系统维护功能。
(3)课程信息维护界面能够完成学校不同专业课程信息的录入,包括任课老师的信息。
还可以对课程信息进行修改、删除等操作。
可以按照课程编号、课程名称、拼音码进行查询,相应的课程的信息会出现在窗口界面。
(3)学生选课界面此部分的功能如下:学生根据自己的学号、姓名、年级进行选课。
可以通过课程拼音、课程名称、课程编号和课程序号对课程信息进行查询,然后会出现所选课程的基本信息。
通过该界面既可以实现选课功能,还可以实现删课功能。
(4)课表查询界面学生根据自己的学号、姓名、年级进行选课可以查到自己所选课程的详细上课时间。
(5)学生成绩输入界面当选课结束时,教师可以根据课程编号查询其所教授的课程,然后给学生输入一定的成绩,然后提交。
(6)打印成绩单界面可以根据学号打印学生相应的成绩。
由于数据库内的信息会很多,注意数据库表格设计,使得学生查询基本信息或学习成绩时使用时间较短。
按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计。
3、系统总框架图教务管理系统基础信息维护教学管理报表统计班级信息维护课程信息维护打印成绩单成绩输入学生选课学生信息维护课表选课三、结构设计1、数据字典(1)数据项数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描述,教务管理的主要数据见下表。
班级信息表成绩表籍贯代码表课程表课程信息表民族代码表选课表学籍代码表学生信息政治面貌代码表(2)数据结构数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或若干个数据项和数据结构混合组成。
经过数据项和用户需求的分析,我对本系统一共分了5个组,具体如下表所示:数据结构名含义说明组成部分班级信息 描述班级基本信息班级编号+年级+班级名称+班级简称+人数 +班主任 学生信息 描述学生基本信息学号+姓名+班级编号+性别+年级+政治面貌+ 民族编号+籍贯编号+省份证号+学籍编号 课程信息 描述学校课程的基本信息课程编号+课程名称+课程简称+拼音码+本学期课程+教师+开课系别学生选课学生的信息和选课的课程信息学号+课序号+课程名称+教师+开课系别+上课时间+上课时间(3)数据流 系统流程图:数据流是数据结构在系统内传输的路径。
通过对用户的需求分析,以及数班级信学生操课程信学生课程教师信班级班级信教师查询成绩打印据项和数据流的设计,得出了相应的数据流描述如下表所示:数据流定义表编号数据流名组成流量备注01 班级信息班级编号+年级+班级名称+班级简称+人数+班主任大班级基本信息02 学生信息学号+姓名+班级编号+性别+年级+政治面貌+民族编号+籍贯编号+省份证号+学籍编号大学生详细信息03 课程信息课程编号+课程名称+课程简称+拼音码+本学期课程+教师+开课系别大课程详细信息04 课程表信息学号+姓名+班级+课程名称大课程表信息05 成绩输入学生成绩+课程编号+课程名称+学号+姓名大学生成绩信息数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
经过数据项、数据结构和数据流的设计,本系统一共选用了三个数据存储,具体对数据存储的描述通常如下表所示:数据存储编号数据存储名输入数据流输出数据流数据量存取方式A1 班级基本信息大批处理、顺序检索A2 学生基本信息大批处理、顺序检索A3 学生成绩单大批处理、更新、顺序检索处理过程的具体处理逻辑一般用判定表或判定树来描述。
对于本系统用于高校教务管理系统一共设计了三种处理方法,具体处理方式如下表所示:处理过程编号名称输入数据流输出数据流备注B1 插入修改01,02,03 01,02,03 插入学生信息信息B2 更新修改01,02,03 01,02,03 更新学生信息信息B3 删除修改01,02,03 01,02,03 删除学生信息信息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. 对于报表统计,我们可以将成绩单实体抽象出来。
成绩考试次数课程编成是否重考是否已确定成绩编号是否补修学班学n1学课选nm成绩课程名成开课系教图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 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 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].[选课表]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课程编号=@courseid and成绩>0commitGOSET QUOTED_IDENTIFIER OFFGOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_NULLS ONGOcreate proc sf_终止选课asbegin tran--应该单独有一个【终止选课】的功能,终止选课后生成空的成绩单--所有学生将不允许更改课程信息,如果需要更改,必须单独申请,特殊处理。