数据库系统的基本概念 数据:实际上就是描述事物的符号记录。 数据的特点:有一定的结构,有型与值之分,如整型、实型、 字符型等。而数据的值给出了符合定型的值,如整型值15。 数据库:是数据的集合, 具有统一的结构形式并存放于统一的存储介质内, 是多种应用数据的集成,并可被各个应用程序共享。 数据库存放数据是按数据所提供的数据模式存放的, 具有集成与共享的特点。 数据库管理系统:一种系统软件,负责数据库中的数据组织、 数据 *** 纵、数据维护、控制及保护和数据服务等,是数据库的核心。 数据库管理系统功能: (1)数据模式定义:即为数据库构建其数据框架; (2)数据存取的物理构建: 为数据模式的物理存取与构建提供有效的存取方法与手段; (3)数据 *** 纵:为用户使用数据库的数据提供方便,如查询、 插入、修改、删除等以及简单的算术运算及统计; (4)数据的完整性、安生性定义与检查; (5)数据库的并发控制与故障恢复; (6)数据的服务:如拷贝、转存、重组、性能监测、分析等。 为完成以上六个功能,数据库管理系统提供以下的数据语言: (1)数据定义语言:负责数据的模式定义与数据的物理存取构建; (2)数据 *** 纵语言:负责数据的 *** 纵,如查询与增、删、改等; (3)数据控制语言:负责数据完整性、 安全性的定义与检查以及并发控制、故障恢复等。 数据语言按其使用方式具有两种结构形式:交互式命令( 又称自含型或自主型语言)宿主型语言( 一般可嵌入某些宿主语言中)。 数据库管理员:对数据库进行规划、设计、维护、 监视等的专业管理人员。 数据库系统:由数据库(数据)、数据库管理系统(软件)、 数据库管理员(人员)、硬件平台(硬件)、软件平台(软件) 五个部分构成的运行实体。 数据库应用系统:由数据库系统、应用软件及应用界面三者组成。 文件系统阶段:提供了简单的数据共享与数据管理能力, 但是它无法提供完整的、统一的、管理和数据共享的能力。 层次数据库与网状数据库系统阶段 :为统一与共享数据提供了有力支撑。 关系数据库系统阶段 数据库系统的基本特点:数据的集成性 、数据的高共享性与低冗余性 、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。 数据库系统的三级模式: (1)概念模式:数据库系统中全局数据逻辑结构的描述, 全体用户公共数据视图; (2)外模式:也称子模式与用户模式。是用户的数据视图, 也就是用户所见到的数据模式; (3)内模式:又称物理模式, 它给出了数据库物理存储结构与物理存取方法。 数据库系统的两级映射: (1)概念模式到内模式的映射; (2)外模式到概念模式的映射。 42 数据模型 数据模型的概念:是数据特征的抽象, 从抽象层次上描述了系统的静态特征、动态行为和约束条件, 为数据库系统的信息表与 *** 作提供一个抽象的框架。 描述了数据结构、数据 *** 作及数据约束。 E-R模型的基本概念 (1)实体:现实世界中的事物; (2)属性:事物的特性; (3)联系:现实世界中事物间的关系。实体集的关系有一对一、 一对多、多对多的联系。 E-R模型三个基本概念之间的联接关系: 实体是概念世界中的基本单位,属性有属性域, 每个实体可取属性域内的值。一个实体的所有属性值叫元组。 E-R模型的图示法:(1)实体集表示法; (2)属性表法; (3)联系表示法。 层次模型的基本结构是树形结构,具有以下特点: (1)每棵树有且仅有一个无双亲结点,称为根; (2)树中除根外所有结点有且仅有一个双亲。 从图论上看,网状模型是一个不加任何条件限制的无向图。 关系模型采用二维表来表示,简称表,由表框架及表的元组组成。 一个二维表就是一个关系。 在二维表中凡能唯一标识元组的最小属性称为键或码。 从所有侯选健中选取一个作为用户使用的键称主键。 表A中的某属性是某表B的键,则称该属性集为A的外键或外码。 关系中的数据约束: (1)实体完整性约束:约束关系的主键中属性值不能为空值; (2)参照完全性约束:是关系之间的基本约束; (3)用户定义的完整性约束: 它反映了具体应用中数据的语义要求。 43关系代数 关系数据库系统的特点之一是它建立在数据理论的基础之上, 有很多数据理论可以表示关系模型的数据 *** 作, 其中最为著名的是关系代数与关系演算。 关系模型的基本运算: (1)插入 (2)删除 (3)修改 (4)查询(包括投影、选择、笛卡尔积运算) 44 数据库设计与管理 数据库设计是数据应用的核心。 数据库设计的两种方法: (1)面向数据:以信息需求为主,兼顾处理需求; (2)面向过程:以处理需求为主,兼顾信息需求。 数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、 物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。 需求分析常用结构析方法和面向对象的方法。结构化分析( 简称SA)方法用自顶向下、逐层分解的方式分析系统。 用数据流图表达数据和处理过程的关系。对数据库设计来讲, 数据字典是进行详细的数据收集和数据分析所获得的主要结果。 数据字典是各类数据描述的集合,包括5个部分:数据项、 数据结构、数据流(可以是数据项,也可以是数据结构)、 数据存储、处理过程。 数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种 (1)集中式模式设计法(适用于小型或并不复杂的单位或部门); (2)视图集成设计法。 设计方法:E-R模型与视图集成。 视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。 视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。 关系视图设计:关系视图的设计又称外模式设计。 关系视图的主要作用: (1)提供数据逻辑独立性; (2)能适应用户对数据的不同需求; (3)有一定数据保密功能。 数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理 的存取路径,以提高数据库访问速度有效利用存储空间。 一般RDBMS中留给用户参与物理设计的内容大致有索引设计、 集成簇设计和分区设计。 数据库管理的内容: (1)数据库的建立; (2)数据库的调整; (3)数据库的重组; (4)数据库安全性与完整性控制; (5)数据库的故障恢复; (6)数据库监控。
数据库设计主要包括需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施和数据库的运行和维护,具体内容如下:
1、需求分析
内容:调查和分析用户的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量以及它们在业务活动中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。
2、概念设计
内容:对用户要求描述的现实世界,通过对其中诸处的分类、聚集和概括,建立抽象的概念数据模型。这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。
3、逻辑设计
内容:主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式。这一步设计的结果就是所谓“逻辑数据库”。
4、物理设计
内容:根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构(包括文件类型、索引结构和数据的存放次序与位逻辑等)、存取方法和存取路径等。
5、验证设计
内容:收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性。一般,一个大型数据库的设计过程往往需要经过多次循环反复。当设计的某步发现问题时,可能就需要返回到前面去进行修改。
6、运行与维护设计
内容:在数据库系统正式投入运行的过程中,必须不断地对其进行调整与修改。除了关系型数据库已有一套较完整的数据范式理论可用来部分地指导数据库设计之外,尚缺乏一套完善的数据库设计理论、方法和工具,以实现数据库设计的自动化或交互式的半自动化设计。
扩展资料:
重要性
1、有利于资源节约
对计算机软件数据库设计加以重视不仅可减少软件后期的维修,达到节约人力与物力的目的,同时还有利于软件功能的高效发挥。
2、有利于软件运行速度的提高
高水平的数据库设计可满足不同计算机软件系统对于运行速度的需求,而且还可充分发挥并实现系统功能。计算机软件性能提高后,系统发出的运行指令在为用户提供信息时也将更加快速有效,软件运行速度自然得以提高。
3、有利于软件故障的减少
加强数据库设计可有效减少软件故障的发生几率,推动计算机软件功能的实现。
参考资料来源:百度百科-数据库设计
逻辑结构设计。根据已经建立的概念数据模型,以及所采用的某个数据库管理系统软件的数据模型特性,按照一定的转换规则,把概念模型转换为这个数据库管理系统所能够接受的逻辑数据模型。不同的数据库管理系统提供了不同的逻辑数据模型,如层次模型、网状模型、关系模型等。
模型的转换 E-R图如何转换为关系模型呢?我们先看一个例子。
图21是学生和班级的E-R图,学生与班级构成多对一的联系。根据实际应用,我们可以做出这个简单例子的关系模式:
学生(学号,姓名,班级)
班级(编号,名称)
“学生班级”为外键,参照“班级编号”取值。
这个例子我们是凭经验转换的,那么里面有什么规律呢?在22节,我们将这些经验总结成一些规则,以供转换使用。 (1)一个实体型转换为一个关系模式
一般E-R图中的一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。
(2)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
图22是一个一对一联系的例子。根据规则(2),有三种转换方式。
(i) 联系单独作为一个关系模式
此时联系本身的属性,以及与该联系相连的实体的码均作为关系的属性,可以选择与该联系相连的任一实体的码属性作为该关系的码。结果如下:
职工(工号,姓名)
产品(产品号,产品名)
负责(工号,产品号)
其中“负责”这个关系的码可以是工号,也可以是产品号。
(ii) 与职工端合并
职工(工号,姓名,产品号)
产品(产品号,产品名)
其中“职工产品号”为外码。
(iii) 与产品端合并
职工(工号,姓名)
产品(产品号,产品名,负责人工号)
其中“产品负责人工号”为外码。
(3)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
(i) 若单独作为一个关系模式
此时该单独的关系模式的属性包括其自身的属性,以及与该联系相连的实体的码。该关系的码为n端实体的主属性。
顾客(顾客号,姓名)
订单(订单号,……)
订货(顾客号,订单号)
(ii) 与n端合并
顾客(顾客号,姓名)
订单(订单号,……,顾客号)
(4)一个m:n联系可以转换为一个独立的关系模式。
该关系的属性包括联系自身的属性,以及与联系相连的实体的属性。各实体的码组成关系码或关系码的一部分。
教师(教师号,姓名)
学生(学号,姓名)
教授(教师号,学号)
(5)一个多元联系可以转换为一个独立的关系模式。
与该多元联系相连的各实体的码,以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。
(6)具有相同码的关系模式可以合并。
(7)有些1:n的联系,将属性合并到n端后,该属性也作为主码的一部分
这类问题多出现在聚集类的联系中,且部分实体的码只能在某一个整体中作为码,而在全部整体中不能作为码的情况下才出现(其它情况本人还没碰到,呵呵,欢迎指教)。
比如上篇文章介绍的管理信息系统中订单与订单细节的联系。
关于什么是聚集,23节介绍。 这部分本应在概念设计中介绍的,用到了才想起来,这里补充一下。
关于现实世界的抽象,一般分为三类:
(1) 分类:即对象值与型之间的联系,可以用“is member of”判定。如张英、王平都是学生,他们与“学生”之间构成分类关系。
(2) 聚集:定义某一类型的组成成分,是“is part of”的联系。如学生与学号、姓名等属性的联系。
(3) 概括:定义类型间的一种子集联系,是“is subset of”的联系。如研究生和本科生都是学生,而且都是集合,因此它们之间是概括的联系。
例:猫和动物之间是概括的联系,《Tom and Jerry》中那只名叫Tom的猫与猫之间是分类的联系,Tom的毛色和Tom之间是聚集的联系。
订单细节和订单之间,订单细节肯定不是一个订单,因此不是概括或分类。订单细节是订单的一部分,因此是聚集。 有了关系模型,可以进一步优化,方法为:
(1) 确定数据依赖。
(2) 对数据依赖进行极小化处理,消除冗余联系(参看范式理论)。
(3) 确定范式级别,根据应用环境,对某些模式进行合并或分解。
以上工作理论性比较强,主要目的是设计一个数据冗余尽量少的关系模式。下面这步则是考虑效率问题了:
(4) 对关系模式进行必要的分解。
如果一个关系模式的属性特别多,就应该考虑是否可以对这个关系进行垂直分解。如果有些属性是经常访问的,而有些属性是很少访问的,则应该把它们分解为两个关系模式。
如果一个关系的数据量特别大,就应该考 虑是否可以进行水平分解。如一个论坛中,如果设计时把会员发的主贴和跟贴设计为一个关系,则在帖子量非常大的情况下,这一步就应该考虑把它们分开了。因为 显示的主贴是经常查询的,而跟贴则是在打开某个主贴的情况下才查询。又如手机号管理软件,可以考虑按省份或其它方式进行水平分解。 这部分主要是考虑使用方便性和效率问题,主要借助视图手段实现,包括:
(1) 建立视图,使用更符合用户习惯的别名。
(2)对不同级别的用户定义不同的视图,以保证系统的安全性。
(3)对复杂的查询 *** 作,可以定义视图,简化用户对系统的使用。
物理设计主要工作是选择存取方法(索引),以及确定数据库的存储结构,这里就不说明了。
数据库设计过程包括:
现实世界→需求分析→概念设计→逻辑设计→物理设计
概念设计——利用数据模型进行概念数据库的模式设计。它不依赖任何DBMS(数据库管理系统)常用的数据模型为ERM(实体联系模型),用到的术语有:实体、属性、联系、键。
逻辑设计——把概念设计得到的概念数据库模式变为逻辑数据模式,它依赖于DBMS。用到的术语有:函数依赖、范式、关系分解。
物理结构设计——指的是根据数据库的逻辑结构来选定RDBMS(如Oracle、Sybase等),并设计和实施数据库的存储结构、存取方式等。
确定数据库的物理结构包含下面四方面的内容:
1、确定数据的存储结构;
2、设计数据的存取路径;
3、确定数据的存放位置;
4、确定系统配置。
数据库物理设计过程中需要对时间效率、空间效率、维护代价和各种用户要求进行权衡,选择一个优化方案作为数据库物理结构。在数据库物理设计中,最有效的方式是集中地存储和检索对象。
以上就是关于什么是数据库的概念结构逻辑结构和物理结构.数据库是如何设计的 系统的安全性是如何考虑的全部的内容,包括:什么是数据库的概念结构逻辑结构和物理结构.数据库是如何设计的 系统的安全性是如何考虑的、数据库设计主要包括哪几部分,分别包括哪些内容、数据库逻辑结构设计包括哪些内容是直接创建表吗比如这个表 那物理结构设计又是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)