100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 《学生考勤信息管理系统》数据库课程设计

《学生考勤信息管理系统》数据库课程设计

时间:2021-08-02 02:05:59

相关推荐

《学生考勤信息管理系统》数据库课程设计

目录

一、 需求分析

前台功能模块

后台功能模块

1.1 功能模块的划分及介绍

1.2 实体及重要属性

1.3 业务流程图

二、概念结构设计

2.1. E-R图的设计

三 、逻辑结构设计

表设计

User1-用户表

Student-学生信息表

College-院系信息表

Attendance personnel 考勤人员表

Class 班级信息表

Activity-活动信息表

meeting-会议信息表

exercise-早操信息表

course-课程信息表

四、物理设计

4.1 数据库的存放位置和存储结构

4.1.1 数据库的存放位置

4.1.2 数据库的存储结构

4.2 索引设计

表2 索引表

五、数据库实施

5.1 创建数据库

5.2 创建表

(1)用户表

(2)学生信息表

(3)College-院系信息表

(4)Attendance personnel 考勤人员表

(5)Class 班级信息表

(6)activity-活动信息表

(7)meeting-会议信息表

(8)exercise-早操信息表

(9) course-课程信息表

六、数据库的试运行

6.1 填入示例数据

视图展示

一、 需求分析

本篇设计文档包括前台功能模块和后台功能模块

前台功能模块

后台功能模块

1.1 功能模块的划分及介绍

本系统包括四个功能模块,注册登录考勤后台管理请假四个功能模块。

1..注册模块:本功能模块设计涉及新用户的注册,和用户的登录,用户分为六大类,学生,任课教师,导员,院系领导,学校领导,系统管理员,他们可以通过自己的学号,和职工号进行注册,后台根据他们的身份不同会赋予不同的权限.

2.考勤模块:本功能模块根据学校的实际需求又分为了四个小的板块

2.1:早操考勤:本模块的功能是学生早操考勤信息的实现,学生可以查看自己本学期的早操出勤情况,导员,院领导,校领导可以查看自己所管辖范围内的学生的早操出勤情况

2.2:开会考勤:本模块的功能是学生开会考勤信息的实现,学生可以查看自己本学期的开会出勤情况,导员,院领导,校领导可以查看自己所管辖范围内的学生的开会出勤情况

2.3:上课考勤:本模块的功能是学生上课考勤信息的实现,学生可以查看自己本学期的上课出勤情况,导员,院领导,校领导可以查看自己所管辖范围内的学生的上课出勤情况

2.4:活动考勤:本模块的功能是学生活动考勤信息的实现,学生可以查看自己本学期的活动考勤情况,导员,院领导,校领导可以查看自己所管辖范围内的学生的活动考勤情况

最终可以根据这四项考勤的情况分别生成每一个院的,每一个班的,每一位同学的量化积分,学校可以根据这个评定优秀院系,优秀班集体,老师可以根据量化积分对学生进行评优评先的推选

3 .请假模块:本模块的功能是在线请假的实现管理,学生有特殊情况导致不能按时上课,上操,开会等可以用到这个功能,这个模块主要设计三大类用户,学生,导员,院系领导用户,学生通过此模块进行在线请假及查看请假记录信息,导员在线审批学生请假,及查看学生请假记录信息,院系领导在线审批学生时间的请假及查看请假记录信息

4.后台管理模块:本模块的功能实现整个系统数据的同步更新及维护,只涉及系统管理员用户.系统管理员动态管理学生信息,课表安排,会议安排,早操安排,学年安排等,是将数据进行整合推送到前台进行展示,是整个系统实现的基础

1.2 实体及重要属性

●学生:学院,专业,班级,姓名,性别,学号,身份证号等信息。

●考勤人员:部门,姓名、院系,班级,学号,等信息。

●院系:院系名称,院系领导等信息

●班级:年级、班级名称、专业名称等信息

●活动:活动名称、活动时间、活动地点等信息

●会议:会议名称、会议时间、会议地点等信息

●早操:上操时间,上操地点等信息

●课程:课程号,课程名,授课老师,课时,上课时间等信息

通过分析,本系统中各实体之间的联系如下:

●院系-学生:一个院系可以有很多学生,但一个学生只能属于一个院系,所以院系和学生是一对多的关系

●院系-考勤人员:一个院系可以有很多考勤人员,但一个考勤人员只能属于一个院系,所以院系和考勤人员是一对多的关系

●院系-班级:一个院系可以有很多班级,但一个班级只能属于一个院系,所以院系和班级是一对多的关系

●考勤人员-班级:一个考勤人员只能考察一个班级,一个班级可以同时被过个考勤人员考察,所以考勤人员和班级是一对多的关系

●活动-学生:一个活动可以有多个学生参加,一个学生特定时间只可以参加1个活动,所以活动和学生是1对多的关系

●会议-学生:一个会议可以有多个学生参加,一个学生特定时间可以参加1个会议,所以会议和学生是1对多的关系

●早操-学生:一个早操队伍可以有多个学生参加,一个学生特定时间只能在一个早操队伍中

●课程-学生:一门课可以被多个学生一块上课,一个学生特定时间内只可以上一节课,所以课程和学生之间是1对多关系

1.3 业务流程图

全局流程图

请假子模块流程图

二、概念结构设计

2.1. E-R图的设计

三 、逻辑结构设计

表设计

User1-用户表

Student-学生信息表

College-院系信息表

Attendance personnel 考勤人员

Class 班级信息

Activity-活动信息表

meeting-会议信息表

exercise-早操信息表

course-课程信息表

四、物理设计

4.1 数据库的存放位置和存储结构

4.1.1 数据库的存放位置

D:\考勤app

4.1.2 数据库的存储结构

创建的数据库为考勤app,有两个文件组,一个是主文件组primary,里面有一个文件,分别是A1,另一个是次要文件组secondary,里面有次要文件A2,最后是日志文件A3 表存放于主文件组中。

4.2 索引设计

表2 索引表

五、数据库实施

5.1 创建数据库

usemaster

go

createdatabase考勤app

onprimary

(

name=a1_mdf,

filename='D:\考勤app\a1.mdf',

size=10mb,

maxsize=50mb,

filegrowth=1mb

),

filegroupsecondry

(

name=a2_mdf,

filename='D:\考勤app\a2.ndf',

size=10mb,

maxsize=50mb,

filegrowth=1mb

)

logon

(

name=a3_ldf,

filename='D:\考勤app\a3.ldf'

)

5.2 创建表

(1)用户表

use考勤app

go

createtableuser1

(

Accountvarchar(20)notnull,

type1varchar(20)notnull,

password1varchar(20)notnull

constraintpk_userprimarykey(account)

)

(2)学生信息表

createtablestudent

(

Studentidvarchar(20)notnull,

snamevarchar(20)notnull,

ssexvarchar(20)notnull,

classvarchar(20)notnull,

colleagevarchar(20)notnull,

specialtyvarchar(20)notnull,

idnumberchar(10)notnull,

midvarchar(20),

aidvarchar(20),

cidvarchar(20),

exercisetimechar(20),

exerciselocationvarchar(20),

jointimechar(20),

wherethrthrattendendancebit,

wheretheleavebit

constraintpk_studentprimarykey(studentid),

constraintfk_meeting_studentforeignkey(mid)referencesmeeting(mid),

constraintfk_activity_studentforeignkey(aid)referencesactivity(aid),

constraintfk_course_studentforeignkey(cid)referencescourse(cid)

)

(3)College-院系信息表

createtablecollege

(

collegenamevarchar(10)notnull,

collegenameleadenumbervarchar(20)notnull,

collegeleadenamevarchar(20)notnull,

classidvarchar(20)notnull,

constraintpk_collegeprimarykey(collegename),

constraintfk_course_collegeforeignkey(classid)referencesclass(classid)

)

)

(4)Attendance personnel 考勤人员

createtableattendancepersonnel

(

apidvarchar(50)notnull,

departmentnamevarchar(20)notnull,

anamevarchar(4)notnull,

collegenamevarchar(20)notnull,

classnamevarchar(20)notnull

constraintpk_attendancepersonnelprimarykey(apid),

)

(5)Class 班级信息

createtableclass

(

classidvarchar(20)notnull,

classnamevarchar(20)notnull,

gradeintnotnull,

apidvarchar(20)notnull,

majorvarchar(20)notnull,

constraintpk_classprimarykey(classid),

constraintfk_attendancepersonnel_classforeignkey(apid)referencesattendancepersonnel(apid)

)

(6)activity-活动信息表

createtableactivity

(

aidvarchar(20)notnull,

anamevarchar(20)notnull,

atimevarchar(20)notnull,

alocationvarchar(20)notnull,

constraintpk_activityprimarykey(aid)

)

(7)meeting-会议信息表

createtablemeeting

(

midvarchar(20)notnull,

mnamevarchar(20)notnull,

mtimevarchar(20)notnull,

mlocationvarchar(20)notnull,

constraintpk_meetingprimarykey(mid),

)

(8)exercise-早操信息表

createtableexercise

(

etimevarchar(20)notnull,

elocationvarchar(20)notnull

constraintpk_exerciseprimarykey(etime,elocation),

)

9 course-课程信息表

createtablecourse

(

cidvarchar(20)notnull,

cnamevarchar(20)notnull,

ctimevarchar(20)notnull,

cteachervarchar(20)notnull,

Ckeshi varchar(20) not null

constraintpk_courseprimarykey(cid),(主键创建)

六、数据库的试运行

6.1 填入示例数据

说明:使用insert语句向表中添加必要数据。

use考勤app

go

insertintoactivity(aid,aname,atime,alocation)

values('a1234','操场汇演','0317','操场')

insertintoattendancepersonnel(apid,departmentname,aname,collegename,classname)

values('2002160102025','体育部','薛豪','信息工程学院','大数据02')

insertintoclass(classid,classname,grade,apid,major)

values('1','大数据02','20','2002160102025','大数据')

insertintocollege(collegename,collegenameleadenumber,collegeleadename,classid)

values('信息工程学院','222','刘卫民','1')

insertintocourse(cid,cname,ctime,cteacher,ckeshi)

values('3308','数据库系统原理','0502','李明义','48')

insertintoexercise(etime,elocation)

values('0503','操场')

insertintomeeting(mid,mname,mtime,mlocation)

values('101-101-101','防诈骗宣讲会','0405','大礼堂')

insertintostudent(studentid,sname,ssex,class,colleage,specialty,idnumber,exercisetime,exerciselocation,jointime,wherethrthrattendendance,wheretheleave)

values('2002160102025','薛豪','男','大数据02','信息工程学院','大数据','4107015730','2005','操场','2024','1','0')

insertintostudent(studentid,sname,ssex,class,colleage,specialty,idnumber,mid,jointime,wherethrthrattendendance,wheretheleave)

values('2002160102024','小明','男','大数据02','信息工程学院','大数据','4107015721','101-101-101','0401','1','0')

insertintostudent(studentid,sname,ssex,class,colleage,specialty,idnumber,aid,jointime,wherethrthrattendendance,wheretheleave)

values('200216010','小红','女','大数据02','信息工程学院','大数据','4107015722','a1234','0406','1','0')

insertintostudent(studentid,sname,ssex,class,colleage,specialty,idnumber,cid,jointime,wherethrthrattendendance,wheretheleave)

values('200216010','小花','女','大数据02','信息工程学院','大数据','4107015713','3308','0407','1','0')

insertintouser1(Account,type1,password1)

values('2597730259','教师','111111')

insertintouser1(Account,type1,password1)

values('1111','学生','123456')

insertintouser1(Account,type1,password1)

values('11','院系领导','1212')

insertintouser1(Account,type1,password1)

values('1','管理员','12')

视图展示

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。