教师管理系统:高效管理数据库实训_第1页
教师管理系统:高效管理数据库实训_第2页
教师管理系统:高效管理数据库实训_第3页
教师管理系统:高效管理数据库实训_第4页
教师管理系统:高效管理数据库实训_第5页
已阅读5页,还剩27页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州科技学院

课程设计阐明书

课程名称:SQLSERVER课程设计

设计题目:教师管理系统

系(院):信息工程学院

专业班级:_______________*****_____________

姓名;________________坦______________

学号:_______________*****_____________

指导教师:________________***______________

成绩:__________________________________

时间:12月28日至1月3日共1周

郑州科技学院

课程设计(论文)任务书

设计题目:___________教师管理系统____________

专业班级:*********

学号****姓名***

重要内容:

教师管理系统包括教师信息表、课程信息表、学院信息表和

讲课信息表。并对这四个表进行统一的管理,本系统以此作为开

发日勺目日勺,用以减轻教师管理人员日勺承担。

顾客分为系统管理员和一般顾客两种身份。需要通过顾客名

和密码进入,系统管理员登录后,可以查看所有信息,并且可以

对顾客进行添加、修改密码、删除等操作。一般顾客只能进入课

程管理和教师信息管理。

基本规定:

本课题是设计教师管理系统.,实现添加、杳询、修改、删除

等功能。从界面上输入教师姓名,可以查询教师的基本信息和课

程信息,不存在口勺数据,输出提醒内容。通过窗体操作可浏览、

删除、添加、修改教师日勺有关数据。

完毕期限:2023年1月3日

指导教师签名:_________________

评审小组负责人签名:

目录

1.序言..................................

1.1系统背景.........................

1.2选题的理由和实际意义............

2.需求分析.............................

2.1顾客对系统规定...................

2.2功能简介........................

3.系统设计.............................

3.1定义.............................

3.2系统总体构造设计图..............

3.3总体E-R图......................

3.4数据表的设计....................

3.5用例列举........................

创立数据库......................

建立索引.........................

约束条件.........................

顾客和授权......................

查询功能.........................

使用计算机对教师信息进行管理,具有人工方式所无法比拟的优

越性。如,查找以便,可靠性高,存储容量大,保密性好,寿命

长,成本低,维护十分以便等,这些长处可以极大得提高工作内

效率,这也是学校日勺科学化,现代化,正规化日勺一点体现。

1.2选题的理由和实际意义

伴随科学技术日勺不停提高,计算机科学日渐成熟,其强大内

功能己为人们深刻认识,它已进入人类社会的各个领域并发挥着

越来越重要的作用。作为计算机应用口勺一部分,使用计算机对教

师信息进行管理,具有人工方式所无法比拟的优越性。如,查找

以便,可靠性高,存储容量大,保密性好,成本低,维护十分以

便等,这些长处可以极大得提高工作的效率,这也是学校H勺科学

化,现代化,正规化的一点体现。教师信息管理系统开发重要包

括数据库的建立和维护以及应用程序口勺开发两个方面。规定建立

起数据一致性和完整性强。数据安全性好H勺库,规定应用程序功

能完备,易使用等特点。教师信息管理系统是一种教育单位不可

缺乏的部分,它H勺内容对于决策者和管理者来说都比较重要,因

此教师信息管理系统应当可以为顾客提供充足时信息和快捷的

查询手段。顾客日勺需求详细体目前对多种信息H勺提供、保留、更

新和查询,这就规定数据库能充足满足多种数据的输出和输入C

因此,为了适应现代教育管理的规定,深入完善教师信息

辅助计算机管理,我作为一种计算机系的本科生,开发这样一套

管理软件成为很有必要H勺事情,在下面H勺各章中我将以开发一套

教师信息管理系统为例,谈谈其开发过程和所波及到出J问题及处

理措施。

本课题是设计任课教师信息管理系统,实现输入、查询、显

示、维护等功能。从界面上输入教师姓名,输出教师H勺基本信息

和任课状况,不存在的数据,要输出提醒内容。从窗体中输入教

师姓名,可以录入教师日勺上课数据,并计算教师的工作量。通过

窗体操作可浏览、删除、添加教师日勺有关数据。

关键字:面向对象,数据一致性,信息管理系统,数据库,

SQLServero

2.需求分析

近年来,教育带来H勺发展对学校管理提出了更高H勺规定。老

式出J管理机制已经不能适应时代的发展,由于它挥霍了许多人力

和物力,在信息时代这种老式口勺管理措施必然被计算机为基础内

信息管理所取代,建设一套具有行业特色口勺管理系统,以适应学

校日勺总体发展战略。教师信息管理系统正是针对这一类问题而开

发出来H勺管理软件。任课教师信息管理系统开发重要包括后台数

据库出J建立和维护以及前端应用程序的开发两个方面。对于前者

规定建立数据一致性和完整性强,数据安全性好的数据库.而对

于后者则规定应用程序功能完备,系统长处:检索迅速、查找以

便、可靠性高、存储量大、安全性高、成本低等。这些长处可以

极大地提高教师信息管理的效率,也是教育的科学化、正规化管

理、易使用等特点。

2.1顾客对系统规定

顾客的需求详细体目前对多种信息的提供、保留、更新和查

询,这就规定数据库能充足满足多种数据H勺输出和输入。通过对

上述系统功能的分析,针对教师信息管理系统日勺需求总结出下列

需求信息:

①使用友好的全屏幕顾客界面,菜单驱动,多窗口。

②数据维护功能,通过窗体实现录入、添加和修改所有表

的内容。

③查询记录功能,设置多种查询方式,实现对教师的任课

状况、工作量记录状况等进行查询。

④系统维护功能,合适的加入系统密码管理、数据备份(已

出现数据库备份界面)等协助功能。

2.2功能简介

一位教师可以教多门课程,并且一门课可以由多名老师来

教。

根据本《教师管理系统》重要是为了满足学校日勺需求而设计,

重视操作简朴易用、功能简洁但够用的特点,确定系统应当具有

如下功能:

(1)教师基本信息数据的输入:操作人员可以在本系统中

建立教师编号、教师姓名、性别、学历、职称、出生年月、地址

等信息,作为教师查询日勺根据之一;

(2)教师基本信息数据的修改、删除:学校中H勺教师人数

和人员,包括职称、工资都会伴随时间的迁移而发生变化。因此,

在系统中设置了增长记录、修改记录、删除记录等操作,教师管

理人员可以随时对教师基本信息进行更新和修改;

(3)顾客分系统管理者和一般操作员顾客;一种学校包括

多种学院。一种学院包括多位教师。

3.系统设计

3.1定义

(1)系统名称:教师管理系统

(2)数据库管理软件:MicrosoftSQLServer2023

(3)数据库设计采用软件:MicrosoftOfficeVersion2023

(4)运行平台:windows2023/xp/linux

(5)数据库的安全性设计:

3.2系统总体构造设计图

图1构造设计图

3.3总体E-R图

根据需求分析口勺成果,我们准备为学校编写一种教师管理系

统。对该系统进行概念设计,根据我们的想法,该系统会分为三

个实体,分别是教师实体、课程实体、学院实体,其中的联络是

教师教讲课程、教师所属学院。

概念模型是对现实世界的抽象和概述,它真实的反应了事物

和事物之间H勺联络。应用实体属性图可以描述某一组织的概念模

型,下面根据需求分析设计教师管理信息系统日勺实体属性图。

在该总体E-R图中,有3个实体类型,1个联络类型,其实

体属性分别见各自H勺实体图。该总体E-R图阐明了实体与实体间

图2教师管理系统完整E-R图

3.4数据表的设计

(1)通过关系模型和不停优化修改,得出如图3教师信息表:

列名数据类型可否为空阐明

教师编号Varchar(10)NOTNULL教师编号(主键)

姓名Varchar(10)NOTNULL教师姓名

性别Char(2)NOTNULL教师性别

联络方式Varchar(10)NULL联络方式

职称Varchar(10)NOTNULL教师职称

工资Int(10)NOTNULL教师工资

图3教师信息表

(2)通过关系模型和不停优化修改,得出如图4课程信息表:

列名数据类型用谷为T阐明

课程编号Varchar(10)NOTNULL课程编号(主键)

课程名Varchar(10)NOTNULL课程名称

学分Int(4)NOTNULL学分

课时Varchar(200)NOTNULL课时

图4课程信息表

(3)通过关系模型和不停优化修改,得出如图5学院信息表:

列名数据类型可否为空阐明

学院编号Varchar(10)NOTNULL学院编号(主键)

学院名Varchar(10)NOTNULL学院名称

专业数Varchar(10)NOTNULL专业数

人数Varchar(20)NOTNULL学院人数

图5学院信息表

(4)通过关系模型和不停优化修改,得出如图6讲课信息表:

列名数据类型可否为空阐明

教师编号Varchar(10)NOTNULL教师编号(主键)

课程编号Varchar(10)NOTNULL课程编号(主键)

上课班级Varchar(10)\OT\m.上课班级

学院名Varchar(20)NOTNULL学院名称

上课时间Varchar(10)NOTNULL上课学期

图6讲课信息表

3.5用例列举

创立数据库

createdatabaseteacherteaching

(1)创立教师信息表

createtableteaching--教师信息表

tie!intprimarykey,

tnamevarchar(lO)notnull,

tsexvarchar(10),

tsedaryint,

tgradevarchar(16),

tphonenumberint,

);

insertintoteachingvalucs(10001,'张三','男',9000,专家:1320231);

insertintoteachingvalues(10002;李四?男二6000;讲师U320232);

insertintoteachingvalues(10003;王五;女,3000J助教1320233);

insertintoteachingvalues(10004,'赵六女',7000,'副专家',1320234);

insertintoteachingvalues(10005:钱七','男',9000,'专家',1320235);

查询表中信息,代码如下:

select*fromteaching

执行后的成果显示如图所示:

口结果二]f肖息

tidtnametsextsalarytgradetphonenumber

教授

11000190001320001

讲师

21000260001320002

助教

31000330001320003

副豹

41000470001320004

教授

1000590001320005

图7

(2)创立课程表

createtablecourse一课程表

cnumberintprimarykey,

cnarnevarchar(lO),

cgradeint,

cperiodint,

);

insertintocoursevalues(1001;数据库,,4,80);

insertintocourse\以1呢$(1002,'数据构造',4,60);

insertintocoursevalues(1003;大学英语:3,60);

insertintocoursevalues(1004:大学物理',2,40);

insertintocoursevalues(1005J高数',4,50);

查询表中信息,代码如下:

select*fromteaching

执行后时成果显示如图所示:

口结果」消息

cnumber

据库4

]1001

构4

21002

语3

31003

学2

41004

教4

51005

图8

(3)创立学院表

createtabledepartment--学院表

didintprimarykey,--学员编号

dnamcvarchar(20),-学院名称

dspecialityint,-专业个数

dpeopleint,--人数

);

insertintodepartment丫@1呢5(1030,'管理学院',6,1000);

insertintodepartmentvalues(1023:信息科学与工程;8,1000);

insertintodepartmentvalues(1040,'外语学院',7』500);

insertintodepartmentvalues(1899;机械与工程学院;5,1200);

insertintodepartmentvalues(1235,'中文学院',4,1300);

查询表中信息,代码如下:

select*fromteaching

执行后时成果显示如图所示:

LL__「rr

果」消息

diddnamedspecialitydpeople

11023信息科学与工程810O0

21030管理学院61(X)0

31040外语学院71500

41235中文学院41300

51893机械与工程学院51200

图9

(4)创立教师任课表

createtabletc--讲课表

tidintprimarykey,一教师编号

cnumberint,-课程编号

classvarchar(lO),-上课班级

dnamevarchar(2O),--学院名

timevarchar(2O),--上课时间

);

insertintotcvalues(10001,1002;工商管理?管理学院10:00/1:40');

insertintotcvalues(100021001,,信息工程?信息科学与工程?8:00-9:40);

insertintotcvalues(100()5,1005:英语?外语学院','15:40-17:2()');

insertintotcvalues(10003,1()04:工程管理,'管理学院','14:00-15:4()');

insertintotcvalues(10004,1003,机械工程?机械与工程学工0:00-11:40);

一,------------------------------

口结果,消息

tidcnumberclassdnametime

1110001I1002工商管理管理学院10:00-11:40

2100021001信息工程信息科学与工程8:00-9:40

3100031004工程管理管理学院14:00-15:40

4100041003机械工程机械与工程学10:00-11:40

5100051005英语外语学院15:40-17:20

图1()

建立索引

Createuniqueindexteacheridonteaching(tid)

-在教师表中按照教师编号建立索引

Createuniqueindexcourseidoncourse(cnumberi

-在课程表中以课程编号建立索引

Createuniqueindexdepartmentidondepartment(didASC,dpeopleDESC)

--在学院表中以学员编号升序,学员人数降序建立索引

约束条件

Altertableleaching--在表teaching增长一种性别I向约束

addconstraintc3chcck(tsexin('男','女'))

3.5.4顾客和授权

Createroleul一创立一种顾客ul

创立顾客

Grantselect,insert,update,delete一给顾客ul授予查询,更新,删除教师信

息表的权利

Onteaching

Toui

授权

Revokedelete-收回顾客对教师信息表I内删除I向权利

Onteaching

Fromu1

收回授权

3.5.5查询功能

通过select语句进行查询。

(1)查询全体教师信息

Select*

Fromteaching

select*

-fromteaching

C3结果石消息

tidtnametsalarytgradetphonenumber

tse更x

1!10001…I弓长三9000教授1320001

2'"i(XX)2-Z李四6000讲师1320002

310003王五3000助教1320003

410004赵六1320004

男7000副教授

510005钱七9000教授1320005

图11

(2)例如查询编号为10001的教师信息。

Select*

Fromteaching

Wheretid=10001

--查询编号为工。。。工的教师信息。

Tselect*

Fromteaching

wheretid=lOOOl

口结果_JJ消息

tidtnametsextsalarytgradetphonenumber

1I10001弓长三男9000教授1320001

图12

(3)记录一种教师的工作量

selectsum(cperiod)

fromcourse,teaching,tc

whereteaching.tid=tc.tidandtcumber=courseumberand

teaching.tid=10001

——1名吉=1

1

图13

更新功能

(1)修改

Updateteaching

Settset='女'

Wheretid=10006

Select*

Fromteaching

一修改信息

upcldDuveactixng

settsex=*,

wheretici=lOOO6

selecc*

-fromc.eactixiig|

二]结果肖息

tidtnametsextsalarytgradetphonenumber

1|1OOO1j养三9000敦凌1320001

210002李四6000讲师1320002

310003王五3000助教1320003

410004赵六7000副数展1320004

510005钱七9000教澄1320005

610006孙八7500教度1320006

图14

(2)插入

insertintoteachingvalued10006,孙八?男750():专家',1320236);

select*

fromteaching

—1)插入教师信息

insertintoteachingvalues(10006,,孙八一男17500J教授11320006);

select**

Lfromteaching

4|川

口结果消息

bdtnametsextsalarytgradetphonenumber

1ioooi

在勇9000艘1320001

210002李四男6000讲师1320002

310003王五女3000助教1320003

410004赵六女7000副教授1320004

510005钱七勇9000醵1320005

610006孙八男7500教授1320006

图15

(3)删除

delete

fromteaching

wheretid=10001

select*fromleaching

__________________________________________________rrr___

^3结匕」消息

tidtnametsextsalarytgradetphonenumber

1110002i李四男6000讲师1320002

210003王五女4000助教1320003

3100Q4赵六女7000副教授1320004

410005钱七更90CX)教授1320005

图16

查询、触发器、视图

(1)触发器

定义一种触发器,为教师信息表定义完整性规则“助教的工

资不得低于4000元,假如低于4000元,自动改为4000元。

CreateTRIGGERinsert_or_update_tsalary一创立触发器

onteaching

afterinsert,update

as

declare@saint

declare@grvarchar(16)

select@sa=tsalaryfrominserted

select@gr=tgradefrominserted

if(@sa<4000and@g尸'助教')

begin

updateteaching

settsalary=4000

wheretgrade='助教'

end

dropTRIGGERinsert_or_updale_tsalary--删除触发器

updateteaching--更新一种助教口勺工资数据监测与否触发器成功执行

settsalary=2023

wheretgrade='助教,

teaching一更新一个助教的工资数据监测是否触发器成功执行

sectsalary=2000

wherecgrade='助教]

I——..........一*..................二J_________

5消息

行受影响)

<i行受影响)

updateteaching—更新一个助教的工资数据监测是否触发器成功执行

settsalary=20C0

wherecgrade=,助教,

-select*fromreaching

日结果为消息

tkitnametse>.tsalatytgradetphonenumber

1i10001j张三男9000教授1320001

2l66b2李四里6000讲师1320002

310003王五女4000助教1320003

410004赵六女7000副教授1320004

510005饯七男9000教授1320005

图17

在触发器成功执行之后,数据库的数据又被触发器强制变化

了,更新的助教工资是2023元,不过触发器成功执行之后,助

教出J工资被变化为规定出J最低4000元。

(2)视图与查询

多表连接查询

即输入教师编号,通过连接多种数据基本表,查出该教师教

的是哪一门课程,在哪个学部,什么时间上课等等。

通过创立视图,简化查询操作,如下所示:

createviewview_teaching--创立教师教课的视图

as

selectteaching.tname,courseame,tc.class,

tc.dname,tc.time

fromteaching,course,tc

whereteaching.tid=tc.tidandtcumber=courseumber

select*fromview_teaching

一查询教师讲课视图

dropviewview_teaching

一删除视图

所操作日勺成果如图18视图多表连接查询所示:

selectteaching.tname,course.cnameztc.classz

tc.dname,tc.time

fromteaching,course,tc|

-whereteaching.tid=tc.tidandtc.cnumber=course.cnumber

2

J结果消息

tnamecnameclassdnametime

・・・・•・・・・・•・・・・・•・・・・•・

1i张三I数据结构工商管理管理学院10:00-11:40

2李四数据车信息工程信息科学与工程8:00-9:40

3王五大学物理工程管理管理学院14:00-15:40

4赵六大学英语机械工程机械与工程学10:00-11:40

5钱七高数英语外语学院15:40-17:20

图18

4.总结

数据库是一种存储数据的大仓库,它不仅包括数据,还包括

数据间的多种关系,以及多种操作。要用数据库,我们首先要

创立一种数据库,让后往里面放东西(数据库文献和事物日志文

献等),数据库里日勺东西不是一成不变的,这就规定对数据库进

行管理,例如数据出J构造、文献和文献组修改、数据库H勺删除等,

数据是以表的形式存在的数据库中,表其实就是一种关系,处理

数据往往就是对表的某些操作,包括对表口勺增删改查。在数据库

操作中,有诸多时候不是对某一种表进行数据库操作,一般还会

把其他表日勺字段时值也传递过来。不过这连个表不是没有关系

时,一般通过索引或者健关联起来,通过查询语句,我们得到一

种成果集,由于关系型数据中是以集合的形式对数据进行处理,

当对单条记录进行操作时就不太以便了,这时就用到了游标,它

包括一种成果集和一种指针,可以从包括多种数据记录的成果集

中每次提取一条记录进行操作。当顾客只需要从表中提取部分内

容时,可以通过钊立视图,视图也是一种类似于表的对象,但它

与表有着本质的区别:视图是在引用存储在数据库中出J查询语句

时动态创立的,是从一种或多种数据表中派生出来的虚拟表,视

图自身不存储数据。查询是数据库中最常见的操作,使用索引

可以大大提高数据库的检索速度,使用索引不仅可以检索出一种

表中日勺记录,还可以通过约束字段,检索出有关联表中需要的记

录。在数据库管理系统中,维护数据完整性是非常重要的,数

据库中通过事务机制、创立约束、缺省值和规则及使用触发器等

来实现,触发器是一种特殊的存储过程,但它是当顾客修改表中

的数据时自动执行的,而存储过程须通过调用机制,这样当对一

种表进行某种操作时,便可以同步对级联日勺表做有关操作,保证

数据同步更改,实现数据的完整性。

实训是个人综合能力的检查。要想学好计算机课程,除了计

算机基础知识功底深厚外,还需有一定的实践动手能力,操作能

力,应付突发故障日勺能力,还要对常用软件都能纯熟操作。作为

一名将近毕业的大三学生,还规定有较强日勺体现能力,同步还要

学会灵活运用学到的知识。此外,还必须有较强的应变能力、独

立思索口勺能力和坚强的)毅力。这次实训是对我学习上口勺一次大检

查。由

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论