教师信息管理系统课程毕业设计Word文档格式.docx

上传人:b****5 文档编号:19286541 上传时间:2023-01-05 格式:DOCX 页数:29 大小:240.12KB
下载 相关 举报
教师信息管理系统课程毕业设计Word文档格式.docx_第1页
第1页 / 共29页
教师信息管理系统课程毕业设计Word文档格式.docx_第2页
第2页 / 共29页
教师信息管理系统课程毕业设计Word文档格式.docx_第3页
第3页 / 共29页
教师信息管理系统课程毕业设计Word文档格式.docx_第4页
第4页 / 共29页
教师信息管理系统课程毕业设计Word文档格式.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

教师信息管理系统课程毕业设计Word文档格式.docx

《教师信息管理系统课程毕业设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《教师信息管理系统课程毕业设计Word文档格式.docx(29页珍藏版)》请在冰豆网上搜索。

教师信息管理系统课程毕业设计Word文档格式.docx

本系统主要考虑了以下几个方面来方便教师工作:

(1)教师一学期的工作计划,包含所教的班级、学生总数、课程等。

(2)教师每周的工作任务,每周的授课次数和所对应的班级,根据所对应的课程数而获得工资。

(3)教师一学期的出勤状况,根据它来判断学期的奖罚状况。

(4)各个教师的基本资料,包含的教师的个人信息和工作信息,让教师和领导可以准确的了解每一位教师的情况,保证了教师的利益,确保教师能将更多精力投入到工作上。

(5)教师员工之间的联系,我们需要的是一个学院之间的能够相互帮助、相互发展,所以需要各个学院教师之间的联系和互动。

(6)教职工的文凭和学习状况,各个教师的学历和工作期间所参加的学习任务,是否和其他高校的员工进行交流,在教学上获得改进。

(7)教师可以通过管理系统查找教师个人信息,以及在校工资信息。

(8)学生对教师的评估,包括教师上课的状况和学生对该门课程的学习状况,以及教师所教班级该课程的最终平均成绩。

1.2系统设计

1.2.1系统功能分析

本系统总体的功能是实现教师信息管理的系统化、规范化和自动化。

本系统要完成的功能有:

(1)系统登录:

包括用户登录、添加用户、修改密码、退出系统等。

通过对用户信息核实,选择权限。

(2)教师信息:

包括教师信息的创建、修改教师信息、删除教师信息等。

其中对教师信息的教师号、姓名、性别、地址、出生日期、联系方式、职务登记。

如果教师的信息有变动,则需要在此修改信息,如果有教师退休,或是辞职,则需要在此删除教师信息。

(3)课时:

包括每日的课时数、每月的课时数、季度课时数、年度课时数等。

通过对每位教师的出勤情况和课时数来计算教师的工资。

如果有代课情况则要记录代课数,以便计算教师工资。

教师可以查看自己的课时。

(4)出勤:

包括每天出勤次数、每月的出勤次数、季度出勤次数、年度出勤次数等。

记录教师每天的出勤情况,教师可以在表格中可以看到每月的出勤次数。

再另一个表格中记录根据出勤次数计算的工资情况。

教师通过对自己的工资了解,来核实出勤。

(5)

授课:

包括教师的职务、授课的班级、所授课程的课程名、课时有关等。

通过对教师的职务来确定教师所授的课程,不同的职位的教师他们的工资不同。

不同的课程所用的课时也不一样。

教师可以通过显示看到自己所教的课程。

(6)教师工资:

包括教师的月基本工资、每课时的工资等。

同时与之相关联的有教师信息表、出勤表、课时表。

通过对教师的职务、出勤、课时等情况记录,实现各教师情况的统计,可一次性显示所有教师的工资情况,也可以根据教师编号看各个教师工资情况。

1.2.2系统功能设计模块

对上述的功能进行集中、分块,按照结构化程序设计要求,尽心分析,得到了如图所示的系统功能模块图

课时信息

教师信息

授课课程

授课

所教班级

1.2.3系统流程图

重试

成功

系统管理员

普通教职工

二概念结构设计

实体及其属性:

1):

教师信息表E—R图

2):

授课表:

E—R图

3):

出勤表:

4):

职务工资信息表:

5):

上半年教师课时表:

6)下半年教师课时表:

7):

用户表:

E—R表

总体:

E—R图:

三.分析与设计数据库

3.1.表的建立

从上面的功能设计和程序浏览中不难看出本系统需要建立以下几个数据表:

教师信息表

授课表

课程表

职务工资信息表

用户表

教师课时

本系统使用的数据量比较小,因此这些表都集中建立在一个数据库中。

一:

(1)教师信息表中有:

教师号,姓名,性别,出生日期,住址等字段:

如图:

列名

数据类型

长度

是否允许为空

说明

教师号

Char

10

主键

姓名

性别

2

默认值:

联系方式

15

出生日期

Datetime

住址

varChar

30

职务

主键:

讲师

(2)授课表中有:

教师号,授课号,课程名,专业,授课班级等字段:

授课号

即“课程号”

课程名

授课班级

专业

(3)出勤表中有:

教师号,第一季度,第二季度,第三季度,第四季度等字段:

第一季度

5

单位:

第二季度

第三季度

第四季度

(4)职务工资信息表中有:

教师类型代号,月基本工资,每课时数工资,每课时数工资,教师类型等字段:

char

月基本工资

Int

每课时数工资

(5)用户表中有:

用户编号,用户名,密码等字段:

用户编号

标示,自动编号,主键

用户名

20

密码

(6)上半年教师课时表中有:

教师号,2月,3月,4月,5月,6月上半年等字段:

2月

4

课时数

3月

4月

5月

6月

上半年

(7)(7)下半年教师课时表中有:

教师号,7月,8月,9月,10月,11月,12月,一月下半年等字段:

7月

8月

9月

10月

11月

12月

一月

下半年

3.2表之间联系

数据表的关系图:

如下:

3.3.SQL命令语句实现相关功能

经过前面的系统需求分析和概念结构设计以后,得到数据库逻辑结构。

现在就可以在SQLSever2000数据库系统中,实现上面设计的数据库逻辑结构。

这一步是利用数据库系统中的查询分析器实现的。

下面给出穿件这些表格的主要SQL语句。

3.3.1.创建教师数据库

createdatabaseteacher

on

(name=teacher1,

filename='

e:

\数据库\teacher1.mdf'

size=5,

maxsize=15,

filegrowth=10%)

logon

(name=teacher_log,

\数据库\teacher_log.ldf'

maxsize=10,

filegrowth=1)

3.3.2.创建表

Useteacher

Go

(1)createtable用户表

(用户编号intidentity(1,1)primarykey,

用户名char(20),

密码char(30))

用户表的视图:

select*from用户表

(2)createtable教师信息表

(教师号char(10)primarykey,

姓名char(10),

性别char

(2)default'

男'

联系方式char(15),

出生日期datetime,

住址varchar(30))

教师信息表的视图:

select*from教师信息表

(3)createtable授课表

授课号char(10),

课程名char(10),

授课班级char(15),

专业char(10))

授课表的视图:

select*from授课表

(4)createtable上半年教师课时表

(教师号char(10)primarykey,

二月char(6),

三月char(6),

四月char(6),

五月char(6),

六月char(6),

上半年char(10))

上半年教师课时表的视图:

select*from上半年教师课时表:

(5)createtable下半年教师课时表

七月char(6),

八月char(6),

九月char(6),

十月char(6),

十一月char(6),

十二月char(6),

一月char(6),

下半年char(10))

下半年教师课时表的视图:

select*from下半年教师课时表:

6)createtable出勤表

第一季度char(5),

第二季度char(5),

第三季度char(5),

第四季度char(5))

出勤表的视图:

select*from出勤表

7)createtable职务工资信息表

(教师类型代号chaR(10)primarykey,

月基本工资int,

每课时数工资int,

教师类型char(20))

职务工资信息表的视图:

select*from职务工资信息表

四SQL语句查询

4.1简单查询:

1)在教师信息表中查询教师号为1003和1005的信息:

Select*from教师信息表where教师号='

1003'

or教师号='

1005'

2)在职务工资信息表中查询教授工资的基本信息,查询教师类型和教师类型代号:

Select*from职务工资信息表where职务='

教授'

3)在出勤表中查询教师号为1003一年四个季度的课时数:

Select*from出勤表where教师号=’1003’

4.2对表中数据进行插入(insert),更新(update),删除(delete)操作:

向职务工资信息表中插入新数据:

职务‘外教’月基本工资‘0’每课时数工资‘100

insert职务工资信息表

values('

外教'

0,100)

2)教师信息表中教师号为1003的职务由讲师变为助教:

update教师信息表set职务='

助教'

where教师号='

删除授课表中课程名为高数的教师号:

deletefrom授课表where课程名='

高数'

and专业='

软件'

如图

4.3模糊查询:

在教师信息表中查询姓张老师的信息:

Select*from教师信息表where姓名like'

张%'

在职务工资信息表中查询职务第一个字和第二个字是‘教’的职务工资情况:

select职务,月基本工资,每课时数工资from职务工资信息表where职务like'

_教%'

4.4多表查询:

1)在教师信息表和授课表中查询教师号为‘1005’‘1007’一些基本信息和授课信息:

select教师信息表.教师号,姓名,性别,课程名,授课班级,专业from教师信息表,授课表where教师信息表.教师号=授课表.教师号and(教师信息表.教师号='

or教师信息表.教师号='

1007'

2)在教师信息,职务工资信息表,出勤表中查询丽丽,张海,linad等教师的教师号,姓名,职务,月基本工资每课时数工资及教师第一季度和第二季度出勤天数:

select教师信息表.教师号,姓名,教师信息表.职务,月基本工资,每课时数工资,第一季度,第二季度from教师信息表,职务工资信息表,出勤表where

教师信息表.职务=职务工资信息表.职务and教师信息表.教师号=出勤表.教师号and(姓名='

丽丽'

or姓名='

张海'

linad'

4.5嵌套查询:

1)在教师信息,授课表,职务工资信息表中查询教c++课程的姓名,职务,课程名,月基本工资:

select教师信息表.教师号,姓名,课程名,教师信息表.职务,月基本工资from教师信息表,职务工资信息表,授课表where课程名in(select

课程名from授课表where课程名='

c++'

)and教师信息表.教师号=授课表.教师号and教师信息表.职务=职务工资信息表.职务

2)在教室信息表和下半年教师课时表中查询下半年总课时数比下半年平均总课时数多的教师信息:

select下半年教师课时表.教师号,姓名,性别,联系方式,职务,下半年as下半年总课时数from教师信息表,下半年教师课时表where

下半年>

(selectavg(下半年)from下半年教师课时表)and教师信息表.教师号=下半年教师课时表.教师号

selectavg(下半年)from下半年教师课时表

4.6创建视图:

1)由教师信息表中女教师的教师号,姓名,联系方式,住址,职务创建视图v1:

Createviewv1

as

select教师号,姓名,性别,联系方式,住址,职务from教师信息表where性别in('

女'

select*fromv1

2)查询教师的教师号,姓名,职务,,月基本工资,每课时数工资创建视图v2:

createviewv2

select教师信息表.教师号,姓名,教师信息表.职务,月基本工资,每课时数工资from教师信息表,职务工资信息表where

教师信息表.职务=职务工资信息表.职务

对视图v1,v2进行操作:

修改视图v1添加约束以后对v1进行修改教师的性别只能为女,('

1012'

'

江江'

15715512222'

合肥阳光小区'

)插入新数据('

,给视图V2加密;

alterviewv1

withcheckoption

insertv1

alterviewv2

withencryption

sp_helptextv2

4.7创建存储过程:

实现输入教师号和月份查询该教师所对应月份的工资:

ifexists(selectnamefromsysobjectswherename='

p'

andtype='

dropprocp

go

createprocp

@nochar(10),@nint=null,@n1int=null,@n2int=null

salary'

andtype='

u'

begin

droptablesalary

createtablesalary

(教师号char(10),

姓名char(15),

工资int,

月份int)

insertsalary

select教师信息表.教师号,姓名,(select月基本工资from职务工资信息表where教师信息表.职务=职务工资信息表.职务)+(select每课时数工资from职务工资信息表where教师信息表.职务=职务工资信息表.职务)*(select二月from上半年教师课时表where教师信息表.教师号=上半年教师课时表.教师号)工资,'

2'

月份from教师信息表,上半年教师课时表,职务工资信息表where教师信息表.职务=职务工资信息表.职务and教师信息表.教师号=上半年教师课时表.教师号and教师信息表.教师号=@no

/*三,四,五,六月相识删减*/

select教师信息表.教师号,姓名,(select月基本工资from职务工资信息表where教师信息表.职务=职务工资信息表.职务)+(select每课时数工资from职务工资信息表where教师信息表.职务=职务工资信息表.职务)*(select七月from下半年教师课时表where教师信息表.教师号=下半年教师课时表.教师号)工资,'

7'

/*八,九,十,十一,十二,一月相识删减*/

end

else

select*fromsalarywhere月份=@nor月份=@n1or月份=@n2

由存储过程p可得:

例:

查询教师号‘1010’1月的工资:

execp'

1010'

1

查询教师号‘1009’,3,4,7月的工资:

1009'

3,4,7

4.8创建触发器:

1)级联修改教师号,修改教师信息表的教师号时,授课表,出勤表,上半年教师课时表,下半年教师课时表的相应教师号进行修改:

createtriggert_update

on教师信息表

forupdate

as

declare@nochar(10),@no1char(10),@namechar(15)

select@

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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