文档详情

教学管理信息系统——教师数据库设计及

jie2****301
实名认证
店铺
DOC
442.50KB
约15页
文档ID:273181643
教学管理信息系统——教师数据库设计及_第1页
1/15

目录1 需求设计 21.1 需求描述 21.2 需求分析 21.2.1 目标用户 21.2.2 平台的选择 21.2.3 逻辑要求 21.2.4 定义用例 32 实现设计 32.1 数据库设计 32.1.1 概念设计 32.1.2 逻辑设计 52.1.3 物理实现 52.1.3.1 生成建库脚本 63 代码实现 104 程序截图 125总结与体会 15教学管理信息系统——教师数据库设计1 需求设计1.1 需求描述教师信息包括教工号、姓名、出生日期、性别、所属院校、职称等,还包括与课程关联的授课资格和授课经历等并且,该应用还可以显示出本学院课程信息列表类似教师信息列表,该列表可按课程名、课程修读次序(每门课可能有先修课程)等字段排序、分组与查找课程信息包括课程编号、课程名、描述、先修课、学分等,还包括拥有该课程授课资格和授课经历的教师信息教务人员可以按教师和课程两条主线浏览与查询所有与教师相关的信息,学院、职称、课程名、授课年份、证件信息等字段均存在超链,以供快速检索同类的信息教务人员还可以对教师、课程、主讲资格、授课经历等信息进行简单的新建、修改及删除操作1.2 需求分析1.2.1 目标用户教务管理人员:快速查询教师信息。

1.2.2 平台的选择选择windows平台,用Microsoft SQL Server 2008进行数据库开发1.2.3 逻辑要求假设一个层级为一个窗口,用户对应用提出的业务逻辑(处理过程)要求如下:教师列表>教师基本信息、教师授课资格和授课经历>相关链接课程列表>课程基本信息、课程授课资格和授课经历>相关链接1.2.4 定义用例用例图如图1图1 用例图2 实现设计2.1 数据库设计2.1.1 概念设计题目要求:“大学有多个学院,每个学院有多名教师(教授,讲师,等)每一门课的主讲教师都应提前获得该课的主讲资格证,一个教师能具有多门课程的主讲资格证;一门课程的主讲资格证也可能颁发给多名教师一个教师可能已主讲过多门课,或多次主讲同一门课按照题目要求,结合实际应用,设计应用所涉及的实体及实体间关系的模型,用ER图表示的概念模型如下:如图所示,所识别出的实体包括教师,课程,授课资质,授课经历等4个实体以教师实体为例,在本应用域中,一个教师包含教师编号,姓名,出生日期,性别,所属学院,职称等属性;实体课程有课程号、课程名、先修课、学分、描述等5个属性;实体讲课经历与实体教师和实体课程相关联,其有属性教师编号、课程号、授课年份等;实体主讲资格证夜雨实体教师和实体课程相关联,其有属性证件编号、教师编号、课程编号、有效截止日期等。

其中一个教师可以教授多门课程,一个课程也可以由多个教师教授,一个教师有零到多个主讲资格证,有零到多个授课经历,而每种授课资质和每种授课经历又与一门课程和一个教师相关联此外,特别地,一门课程有零到多门前导课程,反过来,一门前导课程有一到多门后继课程设计数据库使用ER图这一概念不是必须的;然而使用概念和工具,能使大脑中的构思清晰、无误地展现,并被自动处理作为达到数据库设计的最终目的——设计出高效、高质量的数据库模式——所采用的手段,ER图这一概念模型中的实体最后就成为了一张张的表,实体属性成了表属性,对属性的约束成了表属性中的字段类型及非空唯一等约束,实体中的非空唯一标识属性(组)则成了表的主码;实体之间的联系,成为表与表之间的外码参照;一对多还是零对多,对应到物理设计中被参照的字段可否为空;最后,为了提高海量数据的检索效率,可以在主码和外码上等处建立索引2.1.2 逻辑设计 根据概念设计阶段对数据库概念模型的设计,构造合适的关系数据路模式由ER图可知,此次设计共建了4张表:教师表、课程表、讲课经历表、主讲资格证表对于教师表,其属性有教师编号,姓名,出生日期,性别,所属学院,职称等;其主要的约束有:教师编号设置为主码,姓名非空,其余的属性值均为基本信息。

对于课程表,其属性有课程号、课程名、先修课、学分、描述等;其主要约束有:课程号设置为主码,课程名、学分设置为非空,先修课可有可无对于讲课经历表,其属性有教师编号、课程号、授课年份等;其主要约束有:教师编号为引用教师表主码教师编号的外码,课程号为引用课程表主码课程号的外码,教师编号和课程号一起组成讲课经历表的主码,授课年份非空对于主讲资格证表,其主要的属性有属性证件编号、教师编号、课程编号、有效截止日期等,其中证件编号设置为主码,其中教师编号为引用教师表主码教师编号的外码,课程编号为引用课程表主码课程编号的外码,有效截止日期非空根据应用情况,查表需求,设计了多表连接的视图,方便更快的查找信息2.1.3 物理实现 实现后各表间的联系如下图,并给出了部分视图的图表显示 2.1.3.1 生成建库脚本在Microsoft SQL Server 2008中构建数据库的的相关信息后,生成的脚本如下:1 USE [test]2 GO3 /****** Object: Table [dbo].[课程] Script Date: 07/03/2012 02:02:30 ******/4 SET ANSI_NULLS ON5 GO6 SET QUOTED_IDENTIFIER ON7 GO8 SET ANSI_PADDING ON9 GO10 CREATE TABLE [dbo].[课程](11 [课程号] [char](4) NOT NULL,12 [课程名] [char](20) NOT NULL,13 [先修课] [char](4) NULL,14 [学分] [smallint] NULL,15 [描述] [char](30) NULL,16 PRIMARY KEY CLUSTERED 17 (18 [课程号] ASC19 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]20 ) ON [PRIMARY]21 GO22 SET ANSI_PADDING OFF23 GO24 /****** Object: Table [dbo].[教师] Script Date: 07/03/2012 02:02:30 ******/25 SET ANSI_NULLS ON26 GO27 SET QUOTED_IDENTIFIER ON28 GO29 SET ANSI_PADDING ON30 GO31 CREATE TABLE [dbo].[教师](32 [编号] [char](4) NOT NULL,33 [姓名] [char](10) NOT NULL,34 [性别] [char](2) NULL,35 [出生日期] [date] NULL,36 [所属学院] [char](10) NULL,37 [职称] [char](8) NULL,38 PRIMARY KEY CLUSTERED 39 (40 [编号] ASC41 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]42 ) ON [PRIMARY]43 GO44 SET ANSI_PADDING OFF45 GO46 /****** Object: Table [dbo].[主讲资格证] Script Date: 07/03/2012 02:02:30 ******/47 SET ANSI_NULLS ON48 GO49 SET QUOTED_IDENTIFIER ON50 GO51 SET ANSI_PADDING ON52 GO53 CREATE TABLE [dbo].[主讲资格证](54 [证件编号] [char](10) NOT NULL,55 [教师编号] [char](4) NULL,56 [课程编号] [char](4) NULL,57 [有效截止日期] [date] NULL,58 PRIMARY KEY CLUSTERED 59 (60 [证件编号] ASC61 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]62 ) ON [PRIMARY]63 GO64 SET ANSI_PADDING OFF65 GO66 /****** Object: Table [dbo].[讲课经历] Script Date: 07/03/2012 02:02:30 ******/67 SET ANSI_NULLS ON68 GO69 SET QUOTED_IDENTIFIER ON70 GO71 SET ANSI_PADDING ON72 GO73 CREATE TABLE [dbo].[讲课经历](74 [教师编号] [char](4) NOT NULL,75 [课程号] [char](4) NOT NULL,76 [授课年份] [char](4) NOT NULL,77 PRIMARY KEY CLUSTERED 78 (79 [教师编号] ASC,80 [课程号] ASC81 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]82 ) ON [PRIMARY]83 GO84 SET ANSI_PADDING OFF85 GO86 /****** Object: View [dbo].[C2] Script Date: 07/03/2012 02:02:31 ******/87 SET ANSI_NULLS ON88 GO89 SET QUOTED_IDENTIFIER ON90 GO91 create view [dbo].[C2]92 as93 select 编号,姓名,课程.课程号,课程名,授课年份94 from 教师,课程,讲课经历95 where 教师.编号 = 讲课经历.教师编号 and 课程.课程号 = 讲课经历.课程号;96 GO97 /****** Object: View [dbo].[C1] Script Date: 07/03/2012 02:02:31 ******/98 SET ANSI_NULLS ON99 GO100 SET QUOTED_IDENTI。

下载提示
相似文档
正为您匹配相似的精品文档