大学生数据库系统设计.docx
- 文档编号:24481767
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:23
- 大小:597.46KB
大学生数据库系统设计.docx
《大学生数据库系统设计.docx》由会员分享,可在线阅读,更多相关《大学生数据库系统设计.docx(23页珍藏版)》请在冰豆网上搜索。
大学生数据库系统设计
20xx-20xx学年第x学期xx学院实践教学
成绩评定表
实践教学项目
数据库系统原理与设计
专业
数字媒体技术
学生姓名
xx
班级学号
xx
评
语
成绩
日期
2021年6月20号
课程实践任务书
学院
科技学院
专业
数字媒体技术
姓名
xx
学号
xx
课程名称
数据库系统
原理与设计
设计题目
学生管理系统数据库设计
设计要求与任务:
通过设计一个完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。
熟练掌握两个重要环节—概念结构设计于逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。
具体要求如下:
1、每人一题题目可自拟。
2、要求学生根据题目的要求描述,进行实际调研,提出完整的需求分析报告。
3、独立按时完成规定的工作任务,不弄虚作假,不抄袭他人内容。
工作计划与进度安排:
第1-2天:
需求分析,对系统的功能需求和数据需求进行分析
第3-4天:
概念结构设计画出系统E-R图
第5天:
逻辑结构设计
第6-7天:
数据库的实施与运行
第8-10天:
编辑报告
指导老师(签字)
2021年6月20日
专业负责人(签字)
2021年6月20日
学院院长(签字)
2021年6月20日
摘要
随着计算机技术和数据库技术的高速发展,已经在社会经济、政治、军事、文化、卫生和教育等领域得到了广泛的应用,并随着信息化水平的提高,越来越多的领域正在享受计算机技术和数据库技术带来的高效率、高经济效益等优势。
人们的学习、工作和生活各个方面的质量得到了极大的改善和提高。
以现代计算机技术和数据库管理技术为实现基础的数字化教学管理正在蓬勃发展,因此,加强学校信息化资源的管理和利用,提高学校信息化管理水平,是目前学校学生选课的一个大的趋势,也是学校信息管理的发展要求。
高校选课管理系统是数字化校园的一个组成部分,可以提高学校信息化管理水平,使学校的管理更加的科学、系统和高效。
本次课程设计主要涉及到对学生选课系统进行需求分析,概念结构设计,逻辑结构设计和数据库的实施等几个部分工作。
关键字:
数据库技术;选课管理系统;概念结构设计;逻辑结构设计
引言
科学技术的进步和生产的发展使人类知识总量的增长不断加快,生产社会化趋势的扩大和社会对产品需求的多样性使得组织在营运活动中所涉及的内部和外部信息量迅速地膨胀起来。
面对激烈的市场竞争,人们对这些信息进行收集、加工、传递等过程的时间性和准确性提出了更高的要求。
这一切使得传统的手工作业为基础的信息系统陷入了机构日益庞大,效率日益降低的困境。
电子计算机的出现为摆脱这种困境找到了出路。
计算机用于管理信息处理的突出优点是迅速、准确、可靠、具有很大的存储能力,适应于管理信息量大、面宽的特点,适合于管理信息处理及时、准确的要求。
管理信息系统(MIS,ManagementInformationSystem)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业、管理、分析和决策职能的系统。
管理信息系统利用计算机的硬件和软件,手工规程、分析、计划、控制和决策用的模型,以及数据库对信息进行收集、传输、加工、保存和使用。
因此,管理信息系统是一个信息处理系统。
数据库作为存取数据并对数据进行操作的工具在系统中所起到的作用至关重要。
数据库设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理模式结果,并据此建立数据库及其应用系统,使之能有效地存储和管理数据,满足应用需求,包括信息管理要求和数据操作。
信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象进行哪些操作,如查询、增加、删除、改、统计等操作。
数据库设计的目标是维护用户和各种应用系统提供的一个信息基础设施和高效率地运行环境。
高效率的运行环境包括:
数据库数据的存取速率、数据库存储空间的利用率、数据库系统运行管理的效率等都是高的。
为了使数据库的应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛采用的是工程化6阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施、数据库系统运行与维护阶段。
我按照以上几点开发了学生选课管理系统数据库。
第一章需求分析
1.1需求分析
数据库是一种存储数据并对数据进行操作的工具。
数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。
计算机的数据库可以分为两类:
非关系数据库和关系数据库。
关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,如记录、域等。
SQL server2005就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。
SQL的优点在于它集数据查询、数据操纵、数据定义和数据控制功能于一体。
通过调查本地的学校,根据学校的具体情况设计学生选课信息管理系统。
主要功能有:
1、学生管理:
学生信息查询、插入、删除、修改等
2、选课管理:
选课信息查询、插入、删除、修改等
3、成绩管理:
成绩的查询。
4、系统管理:
操作员信息的管理
5、系统维护:
如数据安全管理(含备份与恢复)、操作员管理、权限设置等
1.1.1分析阶段
本文主要以计算机和网络通信技术为基础,以一门计算机基础课程为实例,研究和探讨了怎样合理地组织和管理教学内容,并且能应用于实际教学之中,以期能达到教师组织教学内容方便、实施网络教学方便以及学生能利用计算机网络进行自主学习的目的。
经过分析,我使用Microsoft公司的Microsoft VisualStudio2008开发工具,将.net技术与数据库SQLserver相结合进行设计。
首先,在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
系统可基本实现选课信息和学生信息的录入、修改、删除等功能,扩充的功能包括与成绩相关的信息处理。
同时,可根据学校教学管理制度,设定或自定义审核操作的规则。
系统其他方面的需求有:
安全保密性、可恢复性、可扩充性、可维护性等。
1.2任务概述
1.2.1目标
本高校管理系统的应用对象定位在普通大学,因此在进行需求分析时主要考虑高等大学的具体需求,并将设计目标确定为普通大学提供基本的高校管理功能。
1.2.2运行环境
服务器配置包括硬件配置和软件配置,它们各自都有详细的要求,下面将分别进行介绍.
1、服务器端配置
(1)、硬件配置
安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:
233兆赫(MHZ)Pentium或更高的微处理器(或与之相当的处理器)
使用256内存(RAM最小为64MB,最大为4GB)
不小于40MB的可用硬盘空间
(2)、软件配置
安装本软件之前,需要确保计算机已安装:
Microsoft WindowsXP及以上的操作系统.
2、客户端配置
本软件开发所需要的硬件配置和软件配置分别介绍如下:
硬件配置:
1台奔腾级别电脑
软件配置:
Microsoft VisualStudio2008
1.3数据流图
图2.1 数据流图
(1)
1.4数据字典
数据流图表达了数据与处理的关系,数据流图作为直观了解系统运行机理的手段,并没有具体描述各个类数据的细节,只有通过数据字典进一步细化才能对系统的需求得到具体而确切的了解。
数据字典用来说明数据流图中出现的所有元素的详细定义和描述,包括数据流、加工处理、数据存储、数据的起点和终点或外部实体等。
数据字典包括的项目有数据项、数据结构、数据流、数据存储、加工逻辑和外部实体。
可使用一些符号来表示数据结构、数据流和数据存储的组成。
数据元素
数据类型
长度
数据来源
学号
char
9
学生表
学生姓名
char
20
学生表
性别
char
2
学生表
年龄
Smalldatetime
default
学生表
所在系
char
20
学生表
课程号
char
4
课程表
课程名
char
40
课程表
选修课
char
4
课程表
学分
char
4
课程表
学号
char
5
成绩表
课程号
char
3
成绩表
成绩
char
3
成绩表
管理员ID
char
4
管理员表
管理员姓名
char
12
管理员表
权限
char
20
管理员表
(1)学号={学号,唯一标识学生,类型:
char,长度:
9,与课程号,唯一标识这门课成绩}。
第二章概念结构设计
2.1概念结构
在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。
概念结构主要特点:
(1)能真是、充分地反映显示世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个只是模型;
(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键。
(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;
(4)易于向关系、网状、层次等各种数据模型转换;
概念结构时各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。
2.2学生选课管理系统概念结构设计
现在对所设计系统的需求作进一步的分析,产生概念结构设计的E-R模型。
由于这个系统并不复杂,因此可采用自顶向下的设计方法。
自顶向下设计的关键是确定系统的核心活动。
所谓核心活动就是系统中的其他活动都要围绕这个活动展开,或与此活动密切相关。
确定了核心活动之后,系统就有了可扩展的余地。
2.2.1系统E-R图
2.2.2 实体及属性的定义
表2-1学生信息表Student的表结构
主码
列名
数据类型
宽度
小位数
空/否
备注
Pk
Sno
Char
9
N
学号
Sname
Char
20
N
姓名
Ssex
Char
2
Y
性别
Ssage
SmallDatetime
Y
出生日期
Sdept
Char
20
Y
所在系
表2-2课程信息表Course的表结构
主码
列名
数据类型
宽度
小位数
空/否
备注
Pk
Cno
Char
4
N
课程代码
Cname
Char
40
N
课程名称
Cpno
Char
4
Y
先修课程
Credit
Decimal
4
1
Y
学分
表2-3选课成绩表SC的表结构
主码
列名
数据类型
宽度
小位数
空/否
备注
Pk
Sno
Char
5
N
学号
Cno
Char
3
N
课程代码
Grade
Decimal
3
1
Y
成绩
表2-4管理员表Admin的表结构
主码
列名
数据类型
宽度
小位数
空/否
备注
Pk
Admin_id
Char
4
N
操作员编号
Admin_name
Char
12
N
操作员姓名
Permission
Char
20
Y
权限
第三章逻辑结构设计
3.1逻辑结构设计
概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。
为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式这
就是数据库逻辑设计所要完成的任务。
数据库逻辑结构的设计分为两个步骤:
首先将概念设计所得的E-R图转换为
关系模型;然后对关系模型进行优化,
关系模型是由一组关系(二维表)的结合,而E-R模型则是由实体、实体的属性、实体间的关系三个要素组成。
所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模型。
3.2 初始关系模式
Student(Sno,Sname,Ssex,Ssage,Sdept)
其中各项含义分别为:
学生(学号,姓名,性别,年龄,所在系)
Course(Cno,Cname,Cpno,Credit)
其中各项含义分别为:
课程(课程代码,课程名称,先修课程,学分)
SC(Sno,Cno,Grade)
其中各项含义分别为:
选修(学号,课程代码,成绩)
Admin(Amin_id,Admin_name,Permission)
其中各项含义分别为:
操作员(操作员编号,操作员姓名,权限)
3.3规范化处理
经过对初始关系模式的规范化处理以下关系模式中不存在部分函数依赖和传递函数依赖,已经达到3NF。
(下划线代表主码,斜体外码)
Student(Sno,Sname,Ssex,Ssage,Sdept)
Course(Cno,Cname,Cpno,Credit)
SC(Sno,Cno,Grade)
Admin(Admin_id,Admin_name,Permission)
第四章物理结构设计
数据库在物理上的存储结构与存储方法称为数据库的物理结构,它依赖于选定的数据库管理系统。
为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是物理结构设计。
数据库的物理结构设计通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;
(2)对物理结构进行评价,评价的中的是时间和空间效率。
4.1索引表
表2-5学生信息表Student的表索引表
索引
列名
数据类型
宽度
主
Sno
Char
9
无
Sname
Char
20
无
Ssex
Char
2
无
Sage
SmallDatetime
无
Sdept
Char
20
表2-6课程信息表Course的索引表
索引
列名
数据类型
宽度
主
Cno
Char
4
无
Cname
Char
40
无
Cpno
Char
4
无
Credit
Decimal
4
表2-7选课成绩表SC的索引表
索引
列名
数据类型
宽度
主
Sno
Char
4
Cno
Char
12
无
Grade
Char
20
表2-8操作员表Admin的索引表
索引
列名
数据类型
宽度
主
Admin_id
Char
4
无
Admin_name
Char
12
无
Permission
Char
20
4.2 角色
建立了管理员角色
4.3 视图
用SQL管理工具建立常用的一个视图,即学生_成绩视图。
菜单栏中单击工具→向导→数据库→创建视图向导,选择你所要建的试图的对象,选择列名,按照提示,最后单击完成即可。
使用SQL语句建立视图的命令如下:
ps(此处本该数据表建成以后再创建视图,为啦清楚表达物理结构设计所以提前)
createview学生_成绩
as
selectsc.sno,sname,o,cname,grade
fromstudentjoinsconstudent.sno=sc.sno
joincourseono=o
第五章数据库的实施
数据库物理设计完成之后,需要用RDBMS提供的数据定义语言和其他使用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,在经调试产生目标文件。
5.1用SQL语言建数据库和表代码如下:
学生选课信息管理系统数据库代码如下:
Createdatabase学生选课管理系统
On
(Name=mydatabase1,
Filename='d:
\数据库\mydatabase.mdf',
Size=3,
Maxsize=10,
Filegrowth=1),
(Name=mydatabase2,
Filename='d:
\数据库\mydatabase.ndf',
Size=5,
Maxsize=15,
Filegrowth=2)
Logon
(Name=mydatabase_log,
Filename='d:
\数据库\mydatabase_log.ldf',
Size=5,
Maxsize=10,
Filegrowth=1)
学生选课信息管理系统数据表代码如下:
createtableStudent(
Snochar(9)primarykey,
Snamechar(20)notnull,
Sexchar
(2)check(sexin('男','女')),
Sbirthsmalldatetime,
Sdeptchar(20)
);
go
createtableCourse(
Cnochar(3)primarykey,
Cnamechar(40)notnull,
Cpno char(4),
CreditDecimal(3,1)
)
go
createtableSC(
Snochar(9)referencesStudent(Sno),
Cnochar(4)referencesCourse(Cno),
Gradedecimal(5,1),
constraintpkprimarykey(Sno,Cno)
)
go
createtableAdmin(
Admin_idchar(9)primarykey,
Admin_namechar(12)notnull,
Permissionchar(20)default'0'
)
go
5.2数据的载入
INSERT
INTO<表名>[(<属性列1>[,<属性列2>…)]
VALUES(<常量1>[,<常量2>]);
以学生表为例插入输入如下:
PS(学号是主码,故不可以相同)
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('200215121','张三','男','20','CS');
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('200215122','李斯','女','19','CS');
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('200215123','王五','女','18','MA');
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
values('200215125','赵六','男','19','IS');
insertintoStudent(Sno,Sname,Ssex,Sage,Sdept)
5.3数据库的修改操作
UPDATE<表名>
SET<列名>=<表达式>
[WHERE<条件>];
例如:
在学生表中修改学号为’200215121’的所在系为’IS’。
updatestudent
setsdept='IS'
wheresno='200215121'
5.4数据库的删除操作
DELETE
FROM<表名>
[WHERE<条件>];
例如:
删除学号为’200215124’的相关信息
delete
fromstudent
wheresno='200215124'
5.5应用程序的调试
系统操作运行演示:
为了使数据库的设计过程更加完整一些,这点专门拿到后面的一章前台界面的开发中去描述。
第六章数据库系统运行与维护
数据库的运行和应用程序的调试都将在第七章中进行演示。
6.1数据库的维护
在数据库运行阶段,对数据库经常性的维护工作主要是有DBA完成,它包括:
1、数据库的转储和恢复
2、数据库的安全性和完整性控制
3、数据库性能的监督、分析和改造
4、数据库的重组织与重构造
6.1.1维护
数据库既是共享的资源,又要进行适当的保密。
DBA必须对数据库安全性和完整性控制负起责任。
尤其在计算机网络普遍引应用的今天,保证数据安全、防止黑客攻击、防止病毒入侵等,都是DBA所需要面对的。
按照设计阶段提供的安全防范和故障恢复规范,DBA要经常检查系统的安全是否受到侵犯,根据用户的实际需要授予用户不同的操作权限。
数据库在运行过程中,由于应用环境发生变化,对安全性的要求可能发生变化,DBA要根据实际情况及时调整相应的授权和密码,以保证数据库的安全性。
同样数据库的完整性约束条件也可能会随应用环境的改变而改变,这时DBA也要对其进行调整,以满足用户的要求。
6.1.2检测并改善数据库性能
目前许多DBMS产品都提供了检测系统性能参数的工具,DBA可以利用系统提供的这些工具,经常对数据库的存储空间及响应时间进行分析评价;结合用户的反映情况确定改进措施;及时改正运行中发现的错误;按用户的要求对数据库的现有功能进行适当的扩充。
但要注意在增加新功能时应保证原有功能和性能不受损害。
6.1.3重新组织和构造数据库
数据库建立后,除了数据本身是动态变化外,随着应用环境的变化,数据库本身也必须变化以适应应用要求。
数据库运行一段时间后,由于记录在不断增加、删除和修改,会改变数据库的物理存储结构,使数据库的物理特性受到破坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降。
因此,需要对数据库进行重新组织,即重新安排数据的存储位置,回收垃圾,减少指针链,改进数据库的响应时间和空间利用率,提高系统性能。
这与操作系统对“磁盘碎片”的处理的概念相似。
数据库的重组只是使数据库的物理存储结构发生变化,而数据库的逻辑结构不变,所以根据数据库的三级模式,可以知道数据库重组对系统功能没有影响,只是为了提高系统的性能。
由此可知,数据库的重组并不会改变原设计的数据逻辑结构和物理结构,而数据库的重构造则不同,它部分修改原数据库的模式或内模式,这主要是因为数据库的应用环境发生了变化,如需求变化、设计调整等。
例如增加新的数据项、改变数据类型、改变数据库的容量、增加或删除索引、修改完整性约束等。
DBMS一般都提供了重新组织和构造数据库的应用程序,以帮助DBA完成数据库的重组和重构工作。
只要数据库系统在运行,就需要不断地进行修改、调整和维护。
一旦应用变化太大,数据库重新组织和构造也无济于事,这就表明数据库应用系统的生命周期结束,应该建立新系统,重新设计数据库。
从头开始数据库设计工作,标准着一个新的数据库应用系统生命周期的开始。
第七章前台设计的用户界面
用户登录界面如下:
系统主界面如下:
学生管理界面如下:
此界面具有增删、改查功能。
具体演示以选课信息为例
选课信息界面设计:
添加课程
连接数据库和添加课程de代码如下:
privatevoidbutton1_Cl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学生 数据库 系统 设计