数据库课程设计班级信息管理系统.docx

上传人:b****7 文档编号:10475352 上传时间:2023-02-13 格式:DOCX 页数:18 大小:291.66KB
下载 相关 举报
数据库课程设计班级信息管理系统.docx_第1页
第1页 / 共18页
数据库课程设计班级信息管理系统.docx_第2页
第2页 / 共18页
数据库课程设计班级信息管理系统.docx_第3页
第3页 / 共18页
数据库课程设计班级信息管理系统.docx_第4页
第4页 / 共18页
数据库课程设计班级信息管理系统.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数据库课程设计班级信息管理系统.docx

《数据库课程设计班级信息管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计班级信息管理系统.docx(18页珍藏版)》请在冰豆网上搜索。

数据库课程设计班级信息管理系统.docx

数据库课程设计班级信息管理系统

甘肃政法学院

本科学生期中作业

 

姓名张航学院计算机科学学院

专业计算机科学与技术班级12级专升本班

实验课程名称数据库原理与系统概论

指导教师及职称姚伟

实验成绩

开课时间2013-2014学年第二学期

第一章数据库设计内容及要求

1.课程设计任务

班级信息管理系统

问题描述:

建立一个关于系、学生、班级、学会等诸信息的关系数据库。

2.设计要求数据库中有以下四个表

(1)、学生:

学号、姓名、出生年月、系名、班号、宿舍区。

(2)、班级:

班号、专业名、系名、人数、入校年份。

(3)、系:

系名、系号、系办公地点、人数。

(4)、学会:

学会名、成立年份、办公地点、人数。

语义如下:

一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。

一个系的学生住在同一宿舍区。

每个学生可参加若干学会,每个学会有若干学生。

学生参加某学会有一个入会年份。

第二章需求分析

1需求分析的任务

需求分析的任务是调查应用领域,对应用领域中的信息要求和操作要求进行详细分析,形成需求分析说明书。

重点是调查,收集与分析用户在数据管理中的信息要求,处理要求,数据的安全性与完整性要求。

为了完成需求分析的任务,要详细调查待开发的数据库应用的情况,了解班级信息系统的工作概况,分析用户的各种需求,在此基础上确定新系统的功能。

新系统必须考虑今后的扩充和改变,不能仅仅按当前应用需求来设计数据库。

2需求分析的过程

(1)了解本班级信息系统主要用于教师管理学生,学生信息管理系统以及参加学会管理系统。

(2)熟悉各部分的信息状况。

调查各个学生的基本信息情况,对现行系统的功能和和所需信息有一个明确的认识。

包括了解各个模块输入和使用什么数据,如何加工处理这些数据,输入什么信息,输出什么信息,输出到什么部门,输出的结果的格式是什么等。

(3)根据

(1)

(2)调查的结果,对学生信息管理中各应用的信息要求和操作要求进行详细分析,从中得到:

该学生信息系统的各个应用从数据库中得到哪些信息,这些信息的具体内容和性质是什么,要求完成什么样的处理功能,对某些处理要求的相应时间,既对数据的安全,完整性的要求。

(4)确定系统的边界。

确定整个系统中哪些由计算机完成,哪些将来由系统完成,哪些由人工完成。

由计算机完成的功能就是新系统完成的功能。

3.功能介绍

(1)调查用户需求

①院系

院系需求:

学生所在院系的系名、系号、系办公地点、人数信息进行输入,删除,修改。

查询功能:

对系,系号,系办公地点的查询。

②学生

学生信息功能:

按专业班级对学生的学号、姓名、出生年月、系名、班号、宿舍区的信息进行输入,删除,修改

查询功能:

查询学生学号、姓名、出生年月、系名、班号、宿舍区

③班级

班级信息:

按专业班级对班号、专业名、系名、人数、入校年份信息进行输入,删除,修改。

查询:

查询学生班级班号、专业名、系名、人数、入校年份信息。

④学会

学会信息功能:

按学生的姓名对学会名、成立年份、办公地点、人数信息进行输入,删除,修改。

查询功能:

按学生姓名对学会名、成立年份、办公地点、人数信息进行查询

(2)关系模式如下

学生S(SnoSnameSbirthDeptClassRno)

班级C(ClassPnameDeptCnumCyear)

系D(DeptDnoOfficeDnum)

学会M(MnameMyearMaddrMnum)

第三章概念结构设计

1概念结构设计的方法

设计概念结构通常有四类方法:

自顶向下,自底向上,逐渐扩张以及混合

策略。

本教学系统采用的是自底向上的方法。

即首先定义全局的概念结构的框架,

然后逐步细化。

根据自顶向上地进行需求分析然后再自底上上地进行概念设计。

2概念结构设计的步骤

概念结构的设计可分为两步:

第一步是抽象数据并设计局部视图。

第二步是

集成局部视图,得到全局的概念结构。

3数据抽象与局部视图设计

按照图2.1教学学管理系统总框架图,设计局部E-R图。

图3.1学生管理系统局部概念结构E-R图

第四章逻辑结构设计

1E-R图向关系模型的转换

将图3.4总体概念结构E-R图转化成关系模型。

系表(系号、系名、系办公地点、人数)主键:

系号外键:

系办公地点

学生表(学号、姓名、出生年月、系名、班号、宿舍区)主键:

学号外键:

班号

班级表(班号、专业名、系名、人数、入校年份)主键:

班号外键:

系名

学会(学会名、成立年份、办公地点、人数)主键:

学会名外键:

办公地点

2数据模型的优化

数据库德逻辑结构设计的结果不是唯一的。

为了提高数据库应用系统的性能,

还应该根据应用需要适当的修改,调整关系模式,这就是数据模型的优化。

规范

化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可用来预测模式

可能出现的问题,使数据库设计工作有了严格的理论基础。

关系数据模型的优化

通常以规范化理论为指导,方法为:

(1)确定数据依赖。

分别写出每个关系内部属性的以及不同关系模式属性间

的数据依赖。

根据需求分析可知:

a)系表的数据依赖:

{系号->系名,系号->系办公地点}

b)班级表的数据依赖:

{班号->班名,班号->系号}

c)学生表的数据依赖:

{学号->姓名,学号->性别,学号->省份,

学号->年龄,学号->班级号,学号->专业}

d)学会表的数据依赖:

{学会名->学生姓名,学会名->学好,学会名->系名}

(2)对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。

(3)按照数据依赖的理论对关系模式逐一分析,考察是否存在部分函数依赖,

传递函数依赖,根据各个函数依赖的依赖集可知各个关系模式没有部分函数依赖

和传递函数依赖所以所有的关系模式都是属于3NF。

不需要进一步,进行模式分

3数据库的结构

给出数据库基本表总体结构图。

根据总体结构图设计各表的结构。

表4-1系表的结构

字段名

数据类型

长度

约束

描述

Dept

char

20

主键

系号

Dno

char

20

不为空

系名

Office

char

30

外键

系办公地点

Dnum

char

10

不为空

人数

表4-2学生表的结构

字段名

数据类型

长度

约束

描述

Sno

char

20

主键

学号

Sname

char

10

不为空

姓名

Sbirth

char

15

不为空

出生年月

Dept

char

20

不为空

系号

Class

Smallint

20

外键

班号

Rno

char

20

不为空

宿舍区

表4-3班级表的结构

字段名

数据类型

长度

约束

描述

Class

char

25

主键

班号

Pname

char

25

不为空

专业名

Dept

char

25

外键

系名

Cnum

char

25

不为空

人数

Cyear

char

25

不为空

入校年份

表4-4学会表的结构

字段名

数据类型

长度

约束

描述

Dept

char

20

主键

学会名

Dno

char

10

不为空

成立年份

Office

smallint

20

外键

办公地点

Dnum

char

8

不为空

人数

第五章物理设计阶段

1系统功能模块

(1)系表信息查询和更新模块

将实现对系部信息的查询和更新(修改、插入、删除)操作,方便于对系部基本信息的管理

(2)学生表的查询和更新模块

将完成班级基本信息的查询、更新(修改、插入、删除)操作,便于对学生信息的集中管理

(3)班级表的查询和更新模块

将完成学生基本信息的查询、更新(修改、插入、删除)操作,便于对学生信息的集中管理

(4)学会表的查询和更新模块

将完成课程基本信息的查询、更新(修改、插入、删除)操作,便于对学生信息的集中管理

2物理设计阶段结果

编号

存储过程

作用

1

系表_insert

在系表中插入一元组

2

班级表_insert

在班级中插入一元组

3

学生表_insert

在学生中插入一元组

4

学会表_insert

在课程中插入一元组

(其他表的查询、修改、删除与上面表的大致相同,这里不再具体列出)

3数据库实施阶段

3.1数据库实施阶段目标

用DBMS所提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果描述出来,成为DBMS可以接受的源代码,在经过调试生成目标模式

3.2数据库实施阶段任务

3.2.1建立数据库

Createdatabase班级信息库班级信息管理系统;

图5.1班级信息管理系统数据库

3.2.2建立数据表

(1)系表基本信息的建立

CreatetableD

(Deptchar(20)primarykeynotnull,

Dnochar(20)notnull,

Officechar(30),

Dnumchar(10)notnull,

图5.2系表

(2)学生表基本信息的建立

CreatetableS

(Snochar(20)primarykey,

Snamechar(10)notnull,

Sbirthchar(15)notnull,

Deptchar(20)notnull,

Classchar(20)notnull,

Rnochar(20)notnull,

图5.3学生表

(3)班级表基本信息的建立

CreatetableC

(Classchar(25)primarykey,

Pnamechar(25)notnull,

Deptchar(25),

Cnumchar(25),

Cyearchar(25),

图5.4班级表

(4)学会表基本信息的建立

CreatetableM

(Mnamechar(20)primarykey,

Myearchar(10)notnull,

Maddrchar(20)notnull,

Mnumchar(8),

图5.5学会表

3.3输入各表的数据

3.3.1输入系表数据

INSERTINTOD(Dept,Dno,Office,Dnum)

VALUES('计算机科学与技术','2012812','信息楼六楼','25')

INSERTINTOD(Dept,Dno,Office,Dnum)

VALUES('人文学院','2012813','信息楼5楼','25')

图5.6系表数据输入

3.3.2输入学生表数据

INSERTINTOS(Sno,Sname,Sbirth,Dept,Class,Rno)

VALUES('201281210102','程志宇','1990年','计算机科学与技术','2012','9')

INSERTINTOS(Sno,Sname,Sbirth,Dept,Class,Rno)

VALUES('201281210104','符雯斌','1989年','计算机科学与技术','2012','9')

图5.7学生表数据输入

3.3.3输入班级表数据

INSERTINTOC(Class,Pname,Dept,Cnum,Cyear)

VALUES('专升本','计算机科学与技术','计科院','47','2012')

INSERTINTOC(Class,Pname,Dept,Cnum,Cyear)

VALUES('广告','艺术学院','美术系','41','2011')

图5.8班级表数据输入

3.3.4输入学会表数据

INSERTINTOM(Mname,Myear,Maddr,Mnum)

VALUES('摄影协会','1990','大学生活动中心001','47')

INSERTINTOM(Mname,Myear,Maddr,Mnum)

VALUES('青年志愿者协会','1990','大学生活动中心002','2780')

图5.9学会表数据输入

3.4基于数据表的数据查询

3.4.1查询系表

Select*

FromD

图5.10系表数据查询

3.4.1查询学生表

Select*

FromS

图5.11学生表数据查询

3.4.2查询班级表

Select*

FromC

图5.12班级表数据查询

3.4.3查询班级表

Select*

FromM

图5.13学会表数据查询

3.5建立视图

(1)查询系表的基本信息的视图定义如下:

createviewD_view

as

select*

fromD

withcheckoption

(2)查询班级表的基本信息的视图定义如下:

createviewC_view

as

select*

fromC

withcheckoption

(3)查询学生表的基本信息的视图定义如下:

createviewS_view

as

select*

fromS

withcheckoption

(4)查询课程表的基本信息的视图定义如下:

createviewM_view

as

select*

fromM

withcheckoption

3.6基于视图的数据查询

3.6.1系表视图查询

Select*

FromD_view

3.6.2班级表视图查询

Select*

FromC_view

3.6.3生表视图查询

Select*

Froms_view

3.6.3生表视图查询

Select*

FromMview

总结

经过一周的努力后本次数据库设计作业已经完成。

其功能完整,用户界面良好,但是也存在着某些缺陷。

这一段时间的努力学习,最后的结果固重要,但更重要的是让自己了解了

数据库设计的一般过程。

在接受客户的一个项目的时候,首先是进行系统分析。

既首先分析其以后的销售情况以及技术可行性。

如果二者可行,我们接下来做的

就是总体设计。

我们首先必须要了解数据库的作用,将其提出的功能按某种方式划分

为几种模块。

这就是整体设计。

在对每一个模块进行细化形成最为简单的模块。

然后是考虑每一细化模块的算法并将其用语言刻画出来。

这就是详细设计。

这就

迈出了最为关键的一步。

只有得到我们期望的结果我们才算真正完成了任务。

在这一段时间的学习中,我终于体会到SQLServer2000功能的功能丰富,表达能力强,

使用灵活方便,应用面广。

这个软件给我们信息化整理数据提供了相当大的便捷。

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

当前位置:首页 > 高等教育 > 军事

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

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