外聘教师管理系统毕业论文

更新时间:2023-12-18 00:20:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目 录

前言 ................................................................................................................................ 1 正文 ................................................................................................................................ 1

2. 1设计目的及意义 ............................................................................................ 1 2.2设计环境 .......................................................................................................... 2 2.3设计目标与总体方案 ...................................................................................... 2 2.4设计方法和步骤 .............................................................................................. 2 2.5设计创新与关键技术 .................................................................................... 17 2.6调试及性能分析 ............................................................................................ 18 2.7结果分析 ........................................................................................................ 18 有关说明 ...................................................................................................................... 20 致谢 .............................................................................................................................. 21 参考文献 ...................................................................................................................... 22

前言

数据库技术作为计算机及相关专业的一门课程,数据库原理开发课程的目的是:掌握数据库德基本原理基本概念及基本技术;能够应用这些理论和技术合理设计数据库;更重要的是通过课程设计掌握所学的知识,融会贯通,初步具有开发完整可用的数据库系统能力。由于数据库具有结构化、最低镕余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上。

本系统主要是面向教师管理系统,实现有关数据的查询和修改,其相关实现是用存储过程实现的,这样对于用户比较方便。对其功能主要是实现了三个模块的功能:外聘教师管理信息系统:主要完成外聘教师的信息查询;信息查询的功能包括:外聘教师的编号、工资、授课情况、职称、性别、所属院系、学历,授课时间、地点等情况;对外聘教师查询系统的更新、删除、查询及插入功能的操作。

本次课程设计以SQL Server 2000作为数据库的管理系统,以Power Designer为设计工具,把数据库的概念、基本理论和基本技术及数据库的设计贯穿,通过做课设把理论和实践紧密结合,对数据库理论与技术上升到感性认识,从而加深对数据库理论的理解和领会。

这需要我们把理论于实际相结合,理论应用在实际中,通过该课程设计,学习使用Power_ Designer数据库设计工具的使用,搞清数据库设计的基本方法、步骤和数据库设计各阶段的任务,完成对某一小型数据库应用系统的基本流程进行分析,数据库设计和相应文档的编写工作。同步进行数据库课程设计一直以来给学生的感觉是理论性强。

通过本课程的训练,使学生掌握数据库技术的实际应用以及数据库信息管理系统的设计方法与开发过程;为以后能进行数据库系统设计、开发与维护打下良好的基础。

开发的操作系统是Windows XP。硬件、软件要求不高,目前市场上的一般计算机软硬件都能满足系统开发要求。本次系统设计使用的前台开发工具是Power Designer。后台数据库使用的是SQL server 2000。

正文

2. 1设计目的及意义

2.1.1设计目的

由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性易于扩充、易于编制应用的特点,较大的信息系统都建立在数据库设计之上的。对于各个学校老师人数的增加,此系统方便于学校对于老师管理。各学校都开始运用数据库系统管理模式,并且范围十分广泛。

外聘教师管理系统方便于用户对外聘教师信息的查询,同时易于学校或院系对外聘老师的信息的更新与管理。 2.1.2设计意义

由于Internet 的迅速普及,数据库得到了初步的运用。数据库技术一直以来是计算机科学技术中发展最快运用最广的技术之一。数据库是数据管理的最新技术。十余年来,数据库管理从专用软件运用成系统软件。

第 1 页 共 22 页

通过本次数据库系统概论课程的学习与课程设计的制作,使我熟练掌握了Power Designer、SQL Server技术设计的基本方法,并学会了SQL Server查询分析器和企业管理器的使用以及如何进行数据库的备份还原的基本知识,还学会了Power Designer的制图方法。

2.2设计环境

2.2.1 Microsoft SQL SERVER 2000简介

SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。 2.2.2PowerDesigner简介

Power Designer系列产品提供了一个完整的建模解决方案,业务或系统分析人员,设计人员,数据库管理员DBA和开发人员可以对其裁剪以满足他们的特定的需要;而其模块化的结构为购买和扩展提供了极大的灵活性,从而使开发单位可以根据其项目的规模和范围来使用他们所需要的工具。Power Designer灵活的分析和设计特性允许使用一种结构化的方法有效地创建数据库或数据仓库,而不要求严格遵循一个特定的方法学。Power Designer提供了直观的符号表示使数据库的创建更加容易,并使项目组内的交流和通讯标准化,同时能更加简单地向非技术人员展示数据库和应用的设计。

2.3设计目标与总体方案

2.3.1设计目标

现在各个学校都设有自己的教师管理系统,虽然比较普遍,但是想要设计好,却很有难度,因为各种教师信息的更新及维护涉及很多方面。但是考虑到技术与时间的限制,整个系统无法完成更加全面和具体,此次设计了大概内容为设计目标。 2.3.2设计总体方案

外聘教师管理信息系统主要包括以下几方面:

(1)外聘教师管理信息系统:主要完成外聘教师的信息查询。

(2)信息查询的功能包括:外聘教师的编号、工资、授课情况、职称、性别、所属院系、学历,授课时间、地点等情况。

(3)对外聘教师查询系统的更新、删除、查询及插入功能的操作。

2.4设计方法和步骤

2.4.1设计分析

外聘教师信息管理系统是以教师信息为主导,除了教师的姓名、性别、单位、学历等项目等基本信息外还有所教授课程这个关键信息。 2.4.2设计过程

根据需求分析,所设计系统的相关数据流程如下: (1)教师信息的录入; (2)信息查询;

(3)教师信息的维护;

在创建表之前,首先绘制出外聘教师信息管理系统设计模块。

第 2 页 共 22 页

外聘教师管理系统 外聘教师管理办公室 信信信信息息息息增修删查加 改 除 询 外聘教师信息查询 系课教部程师查查查询 询 询 图2-1 外聘教师管理系统功能图第 3 页 共 22 页

外聘教师信息 个教院人课系信信信息 息 息

2.4.3业务流程图

外聘教师办 修改外聘教师信息 删除外聘教师信息 增加外聘教师信息 外聘教师信息表 按系部查询 按课程查询 按教师查询 外聘教师 课程表 课程申报 工资查询 图2-2 外聘教师管理系统流程图

2.4.4数据流程图

外聘教师办 管理 外聘教师信息维护 增加、删除。修改信息 外聘教师信息 外聘教师

图2-3 外聘教师管理数据流程图

第 4 页 共 22 页

教师 按授课信息发工资 个人信息 管理部门 查询 教课信息 院系信息

图2-4 数据流程图

2.4.5画出物理模型图并导出各表

根据设计好的基本E-R图设计好的模型如图2-5所示。

图2-5 外聘教师管理ER图

第 5 页 共 22 页

在Power designer 中完成了外聘教师信息管理系统的物理数据模型图:

图2-6 外聘教师信息E--R图

院系 教师信息 院系编号 院系名 称 教师编号 姓 名 性 别 职 称 工资总汇

图2-7 院系实体E—R图 图2-8 教师信息实E---R图

第 6 页 共 22 页

工资 课程 基本工资 补 助 工资总汇 课 程 号 代课教师

图2-9 工资实体E--R图 图2-10 课程信息实体E--R图

院 系

1

1 领导

1 n 教 师

授课

n 属于

工 资

课 程

1

图2-11 教师管理实体E--R图

数据库的全局逻辑数据视图,是数据库管理元所看到的实体、实体属性和实体间的联系。对数据库的概念模型用PowerDesigner为设计工具,把数据库的基本概念转化为物理模型。

第 7 页 共 22 页

图2-12 CDM(概念模型)图

图2-13 PDM(物理模型)图

第 8 页 共 22 页

图2-13 插入数据

插入数据

在查询分析器中输入一下代码:

insert into 代课信息表 (课程号, 代课金级别) values (5, 5);

insert into 代课信息表 (课程号, 代课金级别) values (2, 17);

insert into 代课信息表 (课程号, 代课金级别) values (3, 7);

insert into 代课信息表 (课程号, 代课金级别) values (17, 3);

insert into 代课信息表 (课程号, 代课金级别) values (19, 15);

insert into 代课信息表 (课程号, 代课金级别) values (10, 12);

insert into 代课信息表 (课程号, 代课金级别) values (11, 11);

insert into 代课信息表 (课程号, 代课金级别) values (14, 13);

insert into 代课信息表 (课程号, 代课金级别) values (0, 14);

insert into 代课信息表 (课程号, 代课金级别) values (8, 2);

insert into 代课信息表 (课程号, 代课金级别) values (1, 18);

第 9 页 共 22 页

insert into 代课信息表 (课程号, 代课金级别) values (7, 10);

insert into 代课信息表 (课程号, 代课金级别) values (13, 16);

insert into 代课信息表 (课程号, 代课金级别) values (18, 19);

insert into 代课信息表 (课程号, 代课金级别) values (6, 8);

insert into 代课信息表 (课程号, 代课金级别) values (9, 9);

insert into 代课信息表 (课程号, 代课金级别) values (15, 1);

insert into 代课信息表 (课程号, 代课金级别) values (16, 0);

insert into 代课信息表 (课程号, 代课金级别) values (12, 4);

insert into 代课信息表 (课程号, 代课金级别) values (4, 6);

在Power designer 中将设计好的物理数据模型,根据ER图生成代课信息表,外聘教师信息表,外聘教师表。 2.4.6 生成的SQL语句

(1)根据代课信息表,外聘教师信息表,外聘教师表生成的SQL语句如下: 数据表代码

/*==============================================================*/ /* DBMS name: Microsoft SQL Server 2000 */ /* Created on: 2011-6-29 17:13:03 */

/*==============================================================*/

alter table 外聘教师信息表

drop constraint FK_外聘教师信息表_外聘教师信息表_教师 go

alter table 外聘教师信息表

drop constraint FK_外聘教师信息表_外聘教师信息表2_代课信息表 go

if exists(select 1 from sys.sysforeignkey where role='FK_外聘教师信息表_外聘教师信息表_教师') then

alter table 外聘教师信息表

delete foreign key FK_外聘教师信息表_外聘教师信息表_教师 end if;

if exists(select 1 from sys.sysforeignkey where role='FK_外聘教师信息表_外聘教师信息表2_

第 10 页 共 22 页

代课信息表') then

alter table 外聘教师信息表

delete foreign key FK_外聘教师信息表_外聘教师信息表2_代课信息表 end if;

if exists(

select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id

and i.index_name='代课信息表_PK' and t.table_name='代课信息表' ) then

drop index 代课信息表.代课信息表_PK end if;

if exists(

select 1 from sys.systable

where table_name='代课信息表'

and table_type in ('BASE', 'GBL TEMP') ) then

drop table 代课信息表 end if;

if exists(

select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id

and i.index_name='外聘教师信息表2_FK' and t.table_name='外聘教师信息表' ) then

drop index 外聘教师信息表.外聘教师信息表2_FK end if;

if exists(

select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id

and i.index_name='外聘教师信息表_FK' and t.table_name='外聘教师信息表' ) then

drop index 外聘教师信息表.外聘教师信息表_FK end if;

if exists(

select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id

and i.index_name='外聘教师信息表_PK'

第 11 页 共 22 页

and t.table_name='外聘教师信息表' ) then

drop index 外聘教师信息表.外聘教师信息表_PK end if;

if exists(

select 1 from sys.systable

where table_name='外聘教师信息表'

and table_type in ('BASE', 'GBL TEMP') ) then

drop table 外聘教师信息表 end if;

if exists(

select 1 from sys.sysindex i, sys.systable t where i.table_id=t.table_id and i.index_name='教师_PK' and t.table_name='教师' ) then

drop index 教师.教师_PK end if;

if exists(

select 1 from sys.systable where table_name='教师'

and table_type in ('BASE', 'GBL TEMP') ) then

drop table 教师 end if;

/*==============================================================*/ /* Table: 代课信息表 */

/*==============================================================*/ create table 代课信息表 (

课程号 integer not null, 代课金级别 integer,

constraint PK_代课信息表 primary key (课程号) );

/*==============================================================*/ /* Index: 代课信息表_PK */ /*==============================================================*/ create unique index 代课信息表_PK on 代课信息表 (

第 12 页 共 22 页

课程号 ASC );

/*==============================================================*/ /* Table: 外聘教师信息表 */ /*==============================================================*/ create table 外聘教师信息表 (

姓名 char(10) not null, 代课信_课程号 integer not null, 系部 char(10) not null, 课程号 integer, 工资 integer,

constraint PK_外聘教师信息表 primary key clustered (姓名, 代课信_课程号) );

/*==============================================================*/ /* Index: 外聘教师信息表_PK */ /*==============================================================*/ create unique index 外聘教师信息表_PK on 外聘教师信息表 ( 姓名 ASC,

代课信_课程号 ASC );

/*==============================================================*/ /* Index: 外聘教师信息表_FK */ /*==============================================================*/ create index 外聘教师信息表_FK on 外聘教师信息表 ( 姓名 ASC );

/*==============================================================*/ /* Index: 外聘教师信息表2_FK */ /*==============================================================*/ create index 外聘教师信息表2_FK on 外聘教师信息表 ( 代课信_课程号 ASC );

/*==============================================================*/ /* Table: 教师 */

/*==============================================================*/ create table 教师 (

姓名 char(10) not null,

第 13 页 共 22 页

职称 char(10), 学历 char(10), constraint PK_教师 primary key (姓名) );

/*==============================================================*/ /* Index: 教师_PK */

/*==============================================================*/ create unique index 教师_PK on 教师 ( 姓名 ASC );

alter table 外聘教师信息表

add constraint FK_外聘教师信息表_外聘教师信息表_教师 foreign key (姓名) references 教师 (姓名) on update restrict on delete restrict;

alter table 外聘教师信息表

add constraint FK_外聘教师信息表_外聘教师信息表2_代课信息表 foreign key (代课信_课程号)

references 代课信息表 (课程号) on update restrict on delete restrict;

得到系统逻辑模型后,就该进行数据库的物理设计和实施数据库了,用SQL Sever 2000作为数据库管理系统,物理设计主要是要确定数据库的存储路径、存储结构以及如何建立索引等,可以采用系统的默认设置。数据库实施主要包括在具体的DBMS中创建数据库和表

的过程,本次课程设计所选用的DBMS为SQL SERVER2000,有关创建数据库和关系表的 SQL语句如下所示:

/*==============================================================*/ /* DBMS name: Microsoft SQL Server 2000 */ /* Created on: 2011-6-29 19:21:33 */

/*==============================================================*/ /*==============================================================*/ /* Table: 课程 */

/*==============================================================*/ create table 课程 (

课程号 char(10) not null, 课程名称 char(10) null, 授课学时 char(20) null, constraint PK_课程 primary key (课程号) ) go

/*==============================================================*/ /* Table: 教师 */

第 14 页 共 22 页

/*==============================================================*/ create table 教师 (

姓名 char(20) null, 性别 char(20) null, 编号 char(10) not null, 课程号 char(10) not null, 职称 char(20) null, 所在院系 char(20) null, 工资 char(20) null, 授课地点 char(30) null, 授课时间 char(20) null, 授课学时 char(20) null, constraint PK_教师 primary key (编号),

constraint FK_教师_授课_课程 foreign key (课程号) references 课程 (课程号) ) go

/*==============================================================*/ /* Table: 工资 */

/*==============================================================*/ create table 工资 (

基本工资 bigint null, 补助 bigint null, 代课费 bigint null,

工资汇总 bigint not null, 编号 char(10) null, constraint PK_工资 primary key (工资汇总),

constraint FK_工资_RELATIONS_教师 foreign key (编号) references 教师 (编号) ) go

/*==============================================================*/ /* Index: Relationship_1_FK */

/*==============================================================*/ create index Relationship_1_FK on 工资 (编号 ASC) go

/*==============================================================*/ /* Index: 授课_FK */

/*==============================================================*/ create index 授课_FK on 教师 (课程号 ASC) go

第 15 页 共 22 页

/*==============================================================*/ /* Table: 院系 */

/*==============================================================*/ create table 院系 (

院系号 char(10) not null, 院系名称 char(20) null, 院系老师 char(20) null, constraint PK_院系 primary key (院系号) ) go

/*==============================================================*/ /* Table: 领导 */

/*==============================================================*/ create table 领导 (

院系号 char(10) not null, 编号 char(10) not null, constraint PK_领导 primary key (院系号, 编号), constraint FK_领导_领导_院系 foreign key (院系号) references 院系 (院系号),

constraint FK_领导_领导2_教师 foreign key (编号) references 教师 (编号) ) go

/*==============================================================*/ /* Index: 领导_FK */

/*==============================================================*/ create index 领导_FK on 领导 (院系号 ASC) go

/*==============================================================*/ /* Index: 领导2_FK */

/*==============================================================*/ create index 领导2_FK on 领导 (编号 ASC) go

主要数据操纵语句

根据物理设计和实施对数据库进行基本操作进行验证和运用。(主要进行的功能有:查询、更新、删除、视图的创建和存储过程)

(1)查询全体教师的职称 SELECT 职称 From 教师

第 16 页 共 22 页

(2)将一位新教师的信息插入(编号05;姓名:红海;性别:男;所属系号:01) INSERT INTO 教师

VALUES(‘05’,’红海’,’男’,’01’,) (3)建立信息院教师视图 CREATE VIEW 信息院教师 AS

SELECT 姓名,性别,编号,所属院系,工资总汇,职称 FROM 教师 WHERE 信息院

用户的需求具体体现在对各种信息的提供、保存、更新和查询,这就要求数据库能充分满足各种数据的输出和输入。通过对上述系统功能的分析,针对教师信息管理系统的需求总结出下列需求信息:

用户分系统管理员和一般操作员用户 一个院系包括多个专业和多个老师。

一位教师有一个职称, 一位教师可以教多门课程。 一种职称对应着一种工资 一门课程对应着一种课费 一位老师对应一份工资

经过对上述系统功能的分析和需求总结,设计如下所示的数据项: 教师:包括教师名,所授课程,教师编号,职称,所属院系,性别 课程:包括课程名称、课程号、课费 职称:包括基本工资,补助,教师编号 院系:包括院系号,院系教师 工资:包括基本工资,课费,补助

数据库的全局逻辑数据视图,是数据库管理元所看到的实体、实体属性和实体间的联系。对数据库的概念模型用PowerDesigner为设计工具,把数据库的基本概念转化为物理模型。(概念模型图,物理模型图)

2.5设计创新与关键技术

数据库设计是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。此设计的目的只是掌握数据库的设计思想,设计流程,设计方法等。在对数据的更新,修改,删除过程中,可以运用Select语句进行相应的操作。一般,数据库的设计过程大致可分数据库设计为5个步骤:需求分析;概念设计;逻辑设计;物理设计;验证设计。

教师信息管理数据库设计中,先建立实体,在通过实体去找他们之间的联系及每个实体上的属性,要想考虑到每一个联系及属性,就需要有很好的需求分析,清楚他们之间的概念及相关逻辑,在power designer开发工具进行物理设计,最后设计成功后在SQL Server 2000软件中进行验证,以达到完整的数据库设计。

程序运用了Power Designer、SQL Server 2000软件开发技术。在Power Designer中建了关系图,运行后生成代码,在SQL Server查询分析器里调试,生成了4个表,利用SQL Server

第 17 页 共 22 页

的企业管理器,新建数据库,导入数据,然后备份数据。

2.6调试及性能分析

根据数据图CDM图写出各信息的情况并根据的需求分析教师信息管理系统数据库中各个表中的数据结果如下列表所示,每个表格表示在数据库中的一个表的信息。

表2-1工资总汇信息

序号 1 2 3

列名 基本工资 补助 工资总汇

数据类型 数字 数字 数字

长度 长整型 长整型 长整型

字段说明 说明教师基本工资 说明教师补助 说明教师工资总汇

表2-2教师信息

序号 1 2 3 4 5 6 7 8 9

列名 编号 姓名 所属院系 工资总汇 职称 课程号 授课地点 授课时间 性别

数据类型 字符型 字符型 字符型 数字 字符型 字符型 字符型 字符型 字符型

表2-3院系信息

长度 10 20 20 长整型 20 10 30 20 20

字段说明 说明教师编号 说明教师姓名 说明教师所属院系 说明教师工资总汇 说明教师职称 说明教师课程号 说明教师授课地点 说明教师授课时间 说明教师性别

序号 1 2 序号 1 2

列名 院系名 院系号 列名 课程号 代课教师

数据类型 字符型 字符型

表-4课程信息

长度 20 20 长度 20 20

字段说明 说明院系名 说明院系号 字段说明 说明课程号 说明代课教师

数据类型 字符型 字符型

2.7结果分析

在此次数据库课程设计中,我遇到了好多问题难以解决,在建立关系的时候,由于没有清楚的理解需求分析,将两个实体相连,形成多对多关系,造成联系图不正确,后在老师的指导下了解到在多对多关系中,两个实体之间需要加入一个联系。还有我的数据库表格已经建成了,但在生成代码时出现错误,系统提示是主键和外键设置不当,我仔细检查了Power Designer中的框图,还是没有发现错误,然后请教了老师,老师给我仔细分析了各个表之间

第 18 页 共 22 页

的一对一,一对多等关系,在指导老师的帮助下,该问题最终得以解决。

在整个设计中涉及到的问题还不完善,我会在以后的时间里来使这个数据库更加完善,通过此次的数据库设计使我了解好多不理解的问题,例如:表与表之间的关系和如何把表与表之间联系起来。属性的表间关系有三种类型:一对一、一对多和多对多; 如果指的是表的参照完整性,则是:主外键关系;如果是某些数据库操作上的相关性,则是:级联关系。数据库由若干个表构成,表与表之间通过主键和外键构成关系。主键和外键是相对的。这个表的主键,可能就是另一个表的外键。或者说,一个键,在这个表中是主键,而在另一个表中可能就是外键了。主键与外键只是区别于他的功能。

第 19 页 共 22 页

本文来源:https://www.bwwdw.com/article/hkv5.html

Top