数据库课程设计文档学生考勤管理系统C#.docx

上传人:b****6 文档编号:4361677 上传时间:2022-11-30 格式:DOCX 页数:20 大小:604.41KB
下载 相关 举报
数据库课程设计文档学生考勤管理系统C#.docx_第1页
第1页 / 共20页
数据库课程设计文档学生考勤管理系统C#.docx_第2页
第2页 / 共20页
数据库课程设计文档学生考勤管理系统C#.docx_第3页
第3页 / 共20页
数据库课程设计文档学生考勤管理系统C#.docx_第4页
第4页 / 共20页
数据库课程设计文档学生考勤管理系统C#.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

数据库课程设计文档学生考勤管理系统C#.docx

《数据库课程设计文档学生考勤管理系统C#.docx》由会员分享,可在线阅读,更多相关《数据库课程设计文档学生考勤管理系统C#.docx(20页珍藏版)》请在冰豆网上搜索。

数据库课程设计文档学生考勤管理系统C#.docx

数据库课程设计文档学生考勤管理系统C#

 

学院:

信息技术学院

班级:

计算机131班

 

系统概论

学生考勤管理系统作为一个高校的基本管理,是学校对学生工作管理的基本依据。

开发考勤管理系统,正是完善高校信息化管理的重要环节。

人工考勤已很难满足学校规范化管理的要求,面对庞大的信息量,该方式现存在很多弊端。

因此,建立现代化的智能考勤管理系统势在必行。

这样也大大减轻了考勤工作人员的工作量,提高了工作效率,使原本复杂和枯燥无味的工作变得简单而轻松。

本系统使用的开发工具是Vs2013,采用sql数据库。

实现学生考勤数据采集、数据统计和信息查询,提供教师在线批假,考勤人员即时记录考勤信息,完善学生管理现代化,方便教师统计、考核学生出勤情况,方便学生管理课程查询、考核学生的出勤率,准确地掌握学生出勤情况和相关资料,有效地管理、掌握学生各项情况。

1.需求分析1

1.1背景分析1

1.2功能需求分析1

1.2.1数据字典1

1.2.2数据流图2

1.2.3功能层次结构3

1.3系统设计的目标与内容4

2.概念结构设计5

2.1概念设计方法5

2.2设计步骤5

2.1.1局部E-R模型5

2.1.2初步E-R图6

3.逻辑结构设计6

3.1关系模式6

3.2数据库建表7

3.3数据库关系图9

4.数据库的物理设计10

4.1存储结构域存取方式的选择10

4.2约束条件及参照关系10

4.2.1约束关系10

4.2.2参照关系10

5.数据库的运行与维护11

5.1数据库的初始化(包括数据库、表以及视图的建立)11

6.系统运行界面展示14

6.1考勤人员界面14

6.2教师窗体16

6.3学生窗体17

6.4教务管理人员窗体17

1.需求分析

1.1背景分析

如今各大高校已经做到高度信息化管理。

师生的成绩查询系统、教务管理系统、招生就业系统等系统在各大高校得到广泛应用,对全校师生的学习、办公、管理带来了便利,因此开发一个学生考勤系统能进一步加强高校学风建设,维护正常的教学秩序。

目前高校学生上课考勤都是由任课教师或学习委员点名,记录学生出勤情况,对于请假,需要得到辅导员或学院领导的批准。

这种模式在目前的高校管理中暴露了不可避免的弊端:

一、学生请假对任课教师不透明;

二、学生对自己整个学期的上课出勤情况没有整体的统计信息;

三、学校领导、班主任对学生上课的出勤情况不易整体把握;

因此建立一个好的学生考勤系统可以一定程度上解决这些弊端,本系统是主要针对高校学生上课出勤管理及查看而设计的信息系统。

本系统涉及高校四大类用户:

学生、考勤人员(学习委员)、教师、教务处管理员。

1.2功能需求分析

1.2.1数据字典

字段名

类型

备注说明

能否为空

sno

Char(12)

学生学号

sname

Char(20)

学生姓名

ssex

Char

(2)

学生性别

sdept

Char(20)

学生所属专业

sentrance_time

datetime

学生入学年月

spassword

Char(12)

学生登陆密码

class_name

Char(20)

班级名

class_code

Char(12)

班级代码

cno

Char(12)

课程号

cname

Char(20)

课程名

credit

Char(6)

课程学分

class_time

Char(12)

课程时间

tnname

Char(20)

教师姓名

tno

Char(12)

教师代码

tsex

Char

(2)

教师性别

tentrance_time

datetime

教师入职年月

tdept

Char(20)

教师所属系别

troom

Char(20)

教师所属教研室

ttitle

Char(20)

教师职称

tpassword

Char(12)

教师登陆密码

currentTime

datatime

考勤当前时间

Attendance_state

Char(12)

出勤状态

Off_start

Char(12)

请假开始时间

Off_end

Char(12)

请假截止时间

1.2.2数据流图

根据学生考勤系统的有关功能,进一步形成如图1-2所示的学生考勤管理系统数据流图:

图1-1学生考勤管理系统数据流图

1.2.3功能层次结构

根据调查、分析、商讨,最终确定该系统有考勤记录与教师批假管理子系统、出勤情况查询子系统、后台管理子系统三个子系统构成,三个子系统的主要功能如下所述:

(1)考勤记录与教师批假管理模块

本模块的功能是实现学生出勤情况的管理与记录以及教师对学生的批假功能,主要涉及两大类用户:

考勤人员、教师(包括任课教师、班主任和学校领导),教师可通过此功能模块进行在线批准学生请假;考勤人员可以在登入考勤系统后的看到今日请假的同学名单,然后根据点名情况在线记录本班学生的出勤状况。

(2)出勤情况查询模块

本模块的功能是学生考勤情况统计的实现、查看及管理,涉及四类用户:

学生、教师(包括任课教师、班主任和学校领导)。

学生可在线查看自己所有学年的出勤信息;教师可在线查看某位学生或某门课程的学生出勤情况;

(3)后台管理管理

本模块的功能实现整个系统数据的同步更新及维护,只涉及系统教务处管理员用户。

教务处管理员动态的管理学生信息、教师信息、课表安排、班级安排等信息,是整个系统实现的基础。

 

(4)最终得到的需求分析层次结构图如1-2所示:

图1-2需求分析层次结构图

1.3系统设计的目标与内容

针对系统来说主要任务是设计一个学生考勤管理系统,实现学生考勤的录入、按学号或课程统计、浏览、查询某学生全部出勤状况。

整个考勤系统能够提供请假、迟到、早退、旷课等情况的记录,并实现等处理功能。

具体的设计任务如下:

1、实现教务处管理人员的用户登录及修改密码及管理和创建用户账户;

2、教师(包括班主任、任课教师、校领导)可在线批准学生的请假。

当该班级的考勤人员在学生请假日期内登入考勤系统时会将该学生的请假情况显示出来,以便于考勤人员的记录。

3、考勤人员登录考勤系统记录当天本班学生的出勤情况。

同时也可查看请假学生的具体情况。

4、教师可查看某一学生或某门课程的学生出勤状况。

5、任课教师能按课程查询统计本课程学生出勤状况。

6、学生可通过在线登陆查看自己所有课程的出勤状况。

2.概念结构设计

2.1概念设计方法

本系统先采用自顶向下的设计方法,根据用户需求,先定义全局概念结构的框架,然后分层展开,对学生考勤管理系统的需求进行逐步细化。

然后再采用自底向上将各个实体集成、根据用户的每一具体需求,逐步抽象化,最终产生全局概念结构。

2.2设计步骤

2.1.1局部E-R模型

进行局部概念设计,画出主要实体模型如下图所示:

2.1.2初步E-R图

根据实体之间的联系,得出学生管理系统数据库初步E-R图如下所示:

3.逻辑结构设计

3.1关系模式

根据E-R模型中所有实体对应产生如下七个关系模式:

学生(学号,姓名,性别,专业,入学年月,密码,班级代码)

课程(课程代码,课程名,学分,课程时间,教师代码)

教师(教师代码,教师名,性别,入职年月,所属系别,所属教研室,职称,密码)

班级选课表(班级代码,课程代码,课程时间)

班级表(班级代码,班级名,教师代码)

学生个人出勤情况统计表(学号,课程代码,出勤状态,考勤当前时间)

批假表(学号,请假开始时间,请假结束时间,批假人)

3.2数据库建表

建立的数据库表如下所示:

表3-1学生表

表3-2教师表

表3-3课程表

 

表3-4班级表

表3-5班级选课表

表3-6学生出勤表

表3-7批假表

3.3数据库关系图

数据库中表之间的联系及参照关系如下图3-1所示:

图3-1数据库表关系图

4.数据库的物理设计

4.1存储结构域存取方式的选择

本程序的数据文件和日志文件都存放在磁盘上。

最大的数据空间为200mb。

主数据文件增长的最大值为2mb。

4.2约束条件及参照关系

4.2.1约束关系

(1)出勤状态约束check(attendance_statein('正常','迟到','旷课','早退','请假')),

(2)性别约束check(ssexin('男','女'))

4.2.2参照关系

(1)班级选课表参照了班级表中的班级代码和课程表中的课程代码和课程时间

foreignkey(class_code)referencesclass(class_code),

foreignkey(cno,class_time)referencescourse(cno,class_time));

(2)课程表参照了教师表中的教师代码

foreignkey(tno)referencesteacher(tno),

(3)出勤状态表参照了学生表的学生代码和课程表的课程代码和课程时间

foreignkey(sno)referencesstudent(sno),

foreignkey(cno,class_time)referencescourse(cno,class_time)

(4)批假表参照了学生表的学生代码

foreignkey(sno)referencesstudent(sno),

5.数据库的运行与维护

5.1数据库的初始化(包括数据库、表以及视图的建立)

(1)创建考勤管理系统

createdatabasekaoqin

on

name=kaoqin,

filename='D:

\kaoqin.mdf',

size=20mb,

maxsize=200mb,

filegrowth=2mb)

logon

name='kaoqin_log',

filename='d:

\kaoqin.ldf',

size=10mb,

maxsize=100mb,

filegrowth=2mb);

 

(2)创建学生表

createtablestudent(

snochar(12)primarykey,

snamechar(20)notnull,

ssexchar

(2)check(ssexin('男','女'))notnull,

sdeptchar(20)notnull,

sentrance_timedatetimenotnull,

spasswordchar(12)notnull,

class_codechar(12)notnull

foreignkey(class_code)referencesclass(class_code))

 

(3)创建课程表

createtablecourse(

cnochar(12),

cnamechar(20)notnull,

creditchar(6)notnull,

class_timechar(12)notnull,

tnochar(12)notnull

primarykey(cno,class_time),

foreignkey(tno)referencesteacher(tno),

);

(4)创建班级表

createtableclass(

class_codechar(12)primarykey,

class_namechar(20)notnull,

tnochar(12)notnull,-------------班主任

foreignkey(tno)referencesteacher(tno)-----------参照教师表

);

(6)创建教师表

tnochar(12)primarykey,

tnamechar(20)notnull,

tsexchar

(2)check(tsexin('男','女'))notnull,

tentrance_timedatetimenotnull,

tpasswordchar(12)notnull,

tdeptchar(20)notnull,

troomchar(20)notnull,

ttitlechar(20)notnull);

 

(7)班级选课表

createtableclass_course(

class_codechar(12)notnull,

cnochar(12)notnull,

class_timechar(12),

primarykey(class_code,cno,class_time),

foreignkey(class_code)referencesclass(class_code),

foreignkey(cno,class_time)referencescourse(cno,class_time));

 

(8)学生个人出勤情况统计表

createtableattendance(

currenttimechar(20)notnull,

class_timechar(12),

snochar(12)notnull,

cnochar(12)notnull,

attendance_statechar(12)notnull,

primarykey(sno,cno,currenttime),

check(attendance_statein('正常','迟到','旷课','早退','请假')),

foreignkey(sno)referencesstudent(sno),

foreignkey(cno,class_time)referencescourse(cno,class_time)

altertableattendance

addconstraintDF_attendance_statedefault'正常'forattendance_state;

 

(9)建立批假表

createtableleave

off_startdatetimenotnull,

off_enddatetimenotnull,

snochar(12)notnull,

teachernamechar(20)notnull,

primarykey(sno,off_start,off_end),

foreignkey(sno)referencesstudent(sno),

altertableleave

addreasonvarchar(100);

 

(9)创建视图

createviewattendance_view

as

selectstudent.sno,sname,o,cname,course.class_time,currenttime,attendance_state

fromstudent,course,attendance

wherestudent.sno=attendance.snoando=o

 

6.系统运行界面展示

6.1考勤人员界面

(1)登录界面

(2)首页

(3)点名窗体

(4)查看请假学生具体信息窗体

6.2教师窗体

(1)查看学生出勤状况窗体

(2)教师批假窗体

6.3学生窗体

(1)查看出勤信息窗体

6.4教务管理人员窗体

(1)查看界面

(2)用户管理界面

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1