实例2教室管理系统数据库设计课案doc文档格式.docx

上传人:b****4 文档编号:17573386 上传时间:2022-12-07 格式:DOCX 页数:31 大小:328.36KB
下载 相关 举报
实例2教室管理系统数据库设计课案doc文档格式.docx_第1页
第1页 / 共31页
实例2教室管理系统数据库设计课案doc文档格式.docx_第2页
第2页 / 共31页
实例2教室管理系统数据库设计课案doc文档格式.docx_第3页
第3页 / 共31页
实例2教室管理系统数据库设计课案doc文档格式.docx_第4页
第4页 / 共31页
实例2教室管理系统数据库设计课案doc文档格式.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

实例2教室管理系统数据库设计课案doc文档格式.docx

《实例2教室管理系统数据库设计课案doc文档格式.docx》由会员分享,可在线阅读,更多相关《实例2教室管理系统数据库设计课案doc文档格式.docx(31页珍藏版)》请在冰豆网上搜索。

实例2教室管理系统数据库设计课案doc文档格式.docx

数据项:

表1教室信息数据项

数据项名

数据项含义说明

数据类型

长度

取值范围

取值含义

于其他数据项的逻辑关系

数据项之间的联系

Spart

校区

char

10

Rname

教室名称

Position

所在位置

20

Type

教室类型

Room

容量

int

4

Cno

课程号

Cname

课程名称

Ctime

课程学时

Weed

周次

Day

星期

Node

节次

Mno

系号

Mname

系名

cg

班级

Number

人数

表2课程信息数据项

表3职工信息数据项

Pno

职工编号

等于维修工编号

Pname

姓名

等于维修工姓名

Sex

性别

Age

年龄

Jname

职业名称

Addr

住址

40

Tel

联系电话

Week

Ontime

上班时间

Uptime

下班时间

表4损坏信息数据项

Dlevel

损坏程度

Mend

修复难易

维修工编号

维修工姓名

Repair

是否修复

1.1.4数据结构

表5数据结构表

数据结构名

含义说明

组成

Class(T1)

教室信息

校区名,教室名称,所在位置,教室类型,容量

Course(T2)

课程信息

课程号,课程名称,周次,星期,节次,课程学时,教室名称,系号,系名,班级,人数

Worker(D1)

职工信息

职工编号,姓名,职业名称,性别,年龄,住址,联系电话

Duty(D2)

值班

职工编号,姓名,职业名称,星期,上班时间,下班时间

State(D3)

值班情况记录

职工编号,姓名,职业名称,星期,周次

Media(P1)

多媒体设备损坏记录

教室名称,损坏程度,修复难易,维修工编号,维修工姓名,是否修复

Routine(P2)

常规设备损坏记录

教室名称,损坏程度,维修工编号,维修工姓名,是否修复

1.1.5处理逻辑描述

(1)教室查询子系统

输入:

查询条件

输出:

查询结果

处理:

按照条件,在相应的表中,查找相应的数据,然后输出

(1)卫生管理子系统

查询、插入或修改的目标

结果:

输出查询的结果,或者插入成功,或者修改成功

在相应的表中完成相应的操作。

(3)设备管理子系统

插入或修改或查询的条件或目标

输出查询结果或插入成功或修改成功

在相关表中完成相关的操作。

1.2概念设计

1.2.1引言

概念结构的实际是整个数据库设计的关键,这个阶段主要的目标是通过对用户需求进行综合、归纳与抽象,形成一个独立于DBMS的概念模型(E-R图)。

它的主要特点是:

1.能真实、充分地反映现实世界,包括事物与事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型;

2.易于理解,因此可以用它和不熟悉计算机的用户交换意见;

3.易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;

4.易于向关系、网状、层次等各种数据模型转换。

1.2.2概念模型设计

(1)设计E-R图

详见附录2

1.2.3实体的属性、联系的属性

主码表示如:

教室名称;

外码表示如:

普通属性如:

教室名称。

教室(校区名,教室名称,所在位置,教室类型,容量);

课程(课程号,教室名称,课程名称,周次,星期,节次,课程学时,系名,班级,人数);

职工(职工编号,姓名,职业名称,性别,年龄,住址,联系电话);

多媒体设备损坏(教室名称,维修工编号,损坏程度,修复难易,维修工姓名,是否修复,备注);

常规设备损坏(教室名称,维修工编号,损坏程度,维修工姓名,是否修复,备注);

值班信息(职工编号,姓名,职业名称,星期,上班时间,下班时间);

值班记录(职工编号,姓名,职业名称,星期,周次);

1.3逻辑设计

1.3.1引言

这个阶段的任务就是把概念结构设计阶段设计好的基本E-R图转换为与DBMS所支持的数据模型相符合的逻辑结构。

在这个阶段里,该系统的目标就是把基本的E-R图转换成关系数据模型。

1.3.2数据组织

(1)将E-R图转换成关系模型:

E-R图转换成关系模型应该遵循以下原则:

1.一个实体型转换为一个关系模式。

2.一个1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

3.把一个1:

n联系转换为一个独立的关系模式。

4.一个m:

n联系转换为一个关系模式。

5.三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

6.具有相同码的关系模式可合并。

(2)转换的结果:

课程(课程号,教室名称,课程名称,教师编号,周次,星期,节次,课程学时,系名,班级,人数);

该模式没有插入异常,删除异常等操作异常现象,已经达到3NF。

(3)设计用户子模式:

鉴于安全问题,每一个表都应有相应的视图。

建立相关的视图如下:

教室视图:

Class1(校区,教室名称,地点,教室类型,容量);

课程与教室视图:

Course1(校区,教室名称,教室类型,课程名称,周次,星期,节次,容量);

这两个视图包含了允许学生和员工等用户查询的属性,不允许修改,插入和删除。

为职工做视图:

值日视图:

Duty1(职工编号,职工姓名,职业名称,上班时间,下班时间);

清洁工值班记录:

State1(职工编号,职工姓名,职业名称,日期,情况);

员工值班记录:

State2(职工编号,职工姓名,职业名称,日期,情况);

职工视图:

State3(职工编号,职工姓名,职业名称,日期,情况);

常规设备损坏纪录:

Routine1(教室名称,职工编号,职工姓名,描述,是否修复,日期,备注);

多媒体设备损坏:

Media1(教室名称,职工编号,职工姓名,描述,修复难易,是否修复,日期,备注);

职工信息:

Worker1(职工编号,姓名,职业名称,性别,年龄,住址,联系电话);

在这些视图中,值日视图允许各个职工查询,但只允许管理员(主任)进行修改,插入,删除等操作;

清洁工值班记录视图,除维修工外,其他各职工都可查询,员工还可进行修改操作,管理员(主任)可进行各种操作;

员工值班记录只允许员工查询;

常规设备损坏纪录视图允许员工和维修工进行查询,员工只对视图中的教室名称属性有修改,插入的权限,维修工对其他属性有修改权限;

在多媒体设备损坏信息视图中,允许员工和多媒体维修工进行查询,员工只对教室名称有修改和插入的权限,多媒体维修工对其他的属性有修改权限。

为方便,其中的部分权限在制作过程中要直接赋给基本表。

1.3.3数据处理

见系统的功能模块图:

1.4物理设计

1.4.1引言

数据库在物理设备上的存储与存取方法称为数据库的物理结构,它依赖于给定的计算机系统。

为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。

1.4.2目标与任务

对数据库进行合理的物理设计,以提高其时间和空间效率。

(1)数据存取方面

确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;

对物理结构进行评价,评价的重点是时间和空间效率。

如果评价结果满足原设计的要求,则可以进入到物理实施阶段,否则就需要重新设计或修改物理结构,有时甚至要返回逻辑设计阶段修改数据模型。

(2)功能模块

见图15所示

1.5数据库实施

1.5.1建立基本表

/*建立教室信息表*/

createtableClass

Spartchar(10),

Rnamechar(10)notnullunique,

Positionchar(20),

Typechar(10),

Roomint,

primarykey(Rname)

/*建立课程信息表*/

createtableCourse

Cnochar(10),

Cnamechar(20),

Rnamechar(10),

Cweekchar(10),

Cdaychar(10),

Nodechar(10),

Ctimeint,

Gradechar(10),

Numberint,

Sdeptchar(20)

/*建立职工信息表*/

createtableWorker

Wnochar(10)notnullunique,

Wnamechar(20),

Wsexchar(4),

Wageint,

Jnamechar(10),

Addrchar(40),

Telchar(20),

primarykey(Wno),

check(Wage>

=18andWage<

=60)

/*建立值班信息表*/

createtableDuty

Wnochar(10),

Ontimechar(20),

Uptimechar(20),

foreignkey(Wno)referencesWorker(Wno),

/*建立值班情况记录表*/

createtableState

Wdatechar(20),

statechar(20)

/*建立多媒体设备损坏记录表*/

createtableMedia

Rnamechar(10),

Describechar(20),

Dlevelchar(10),

Repairchar(4),

Mdatechar(20),

Pmarkchar(50)

/*建立常规设备损坏记录表*/

createtableRoutine

1.5.2建立视图

/*教室信息视图*/

createviewClass1(校区,教室名称,地点,教室类型,容量)

as

select*

fromClass

/*课程信息视图*/

createviewCourse1(校区,教室名称,教室类型,课程名称,周次,星期,节次,容量)

selectClass.Spart,Class.Rname,Type,Cname,Cweek,Cday,Node,Class.Room

fromClass,Course

WhereClass.Rname=Course.Rname

/*职工信息视图*/

createviewWorker1(职工编号,姓名,职业名称,性别,年龄,住址,联系电话)

fromWorker

/*值班信息视图*/

createviewDuty1(职工编号,职工姓名,职业名称,上班时间,下班时间)

fromDuty

/*清洁工值班情况记录视图*/

createviewState1(职工编号,职工姓名,职业名称,日期,情况)

fromState

whereJname='

清洁工'

/*除清洁工外其他职工值班情况视图*/

createviewState2(职工编号,职工姓名,职业名称,日期,情况)

whereJname!

='

/*总的职工值班情况视图*/

createviewState3(职工编号,职工姓名,职业名称,日期,情况)

/*常规设备损坏视图*/

createviewRoutine1(教室名称,职工编号,职工姓名,描述,是否修复,日期,备注)

fromRoutine

/*多媒体设备损坏视图*/

createviewMedia1(教室名称,职工编号,职工姓名,描述,修复难易,是否修复,日期,备注)

fromMedia

2.5.3查询与更新

/*员工课程查询*/

createProcedurejs_kc1

@C_Spartchar(10),

@C_Cweekchar(6),

@C_Cdaychar(4),

@C_Nodechar(5)

select校区,教室名称,课程名称,教室类型,容量

fromCourse1

where校区=@C_Spartand周次=@C_Cweekand星期=@C_Cday

and节次=@C_Nodeand教室类型='

多媒体教室'

orderby教室名称ASC

/*学生课程查询*/

createprocedurejs_kc2

where校区=@C_Spartand周次=@C_Cweekand星期=@C_Cdayand节次=@C_Node

/*空教室查询*/

createprocedurejs_kjs1

select校区,教室名称,教室类型,容量

fromClass1

wherenotexists

select*

fromCourse1

where校区=@C_Spartand周次=@C_Cweekand星期=@C_Cday

and节次=@C_Nodeand教室名称=Class1.教室名称

/*职工值班查询*/

createprocedurejs_zb1

@S_Wnochar(10)

select职工编号,职工姓名,职业名称,上班时间,下班时间

fromDuty1

where职工编号=@S_Wno

/*职工值班记录查询*/

createprocedurejs_zbjl1

select职工编号,职工姓名,职业名称,日期,情况

fromState3

/*员工对清洁工值班记录的插入(视图)*/

createprocedurejs_zlc1

@S_Wnochar(10),

@S_Wnamechar(20),

@S_Jnamechar(10),

@S_Wdatechar(20),

@S_statechar(20)

insertintoState1

values(@S_Wno,@S_Wname,@S_Jname,@S_Wdate,@S_state)

/*员工对清洁工值班记录的删除(视图)*/

createprocedurejs_zls1

delete

fromState1

/*主任除清洁工外的其他职工值班记录的插入(视图)*/

createprocedurejs_zlc2

insertintoState2

values(@S_Wno,@S_Wname,@S_Jname,@S_Wdate,@S_state)

/*主任除清洁工外的其他职工值班记录的删除(视图)*/

createprocedurejs_zls2

fromState2

/*主任对职工信息表的插入*/

createprocedurejs_zlc3

@W_Wnochar(10),

@W_Wnamechar(20),

@W_Wsexchar(4),

@W_Wageint,

@W_Jnamechar(10),

@W_Addrchar(40),

@W_Telchar(20)

insertintoWorker

values(@W_Wno,@W_Wname,@W_Wsex,@W_Wage,@W_Jname,@W_Addr,@W_Tel)

/*用游标完成的主任对职工信息表的修改*/

CREATEPROCEDUREjs_dmtxg1

@W_Telchar(

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

当前位置:首页 > 初中教育 > 语文

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

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