数据库中的一些概念:模型、结构

数据库即存储数据的仓库。

数据库系统(DataBase System,DBS)一般由数据库、数据库管理系统(DBMS)、应用系统、数据库管理员和用户构成。DBMS是数据库系统的基础和核心。


数据模型由数据结构、数据操作、完整性约束3部分组成,分别为:

1:数据结构:对系统静态特征的描述,包括数据的类型、内容、性质和数据间的相互关系;

2:数据操作:对系统动态特征的描述,对数据库各种对象实例的操作;

3:完整性约束:完整性规则的集合,定义了给定的数据模型中数据及其联系的所具有的制约和依存关系。


常见的数据库数据模型主要有层次模型、 网状模型和关系模型:

层次模型是一种用树形结构描述实体及其之间关系的数据模型。在这种结构中,每一个记录类型都是用节点表示,记录类型之间的联系则用结点之间的有向线段来表示。每一个双亲结点可以有多个子节点但是每一个子节点只能有一个双亲结点。这种结构决定了采用层次模型作为数据组织方式的层次数据库系统只能处理一对多的实体联系。


网状模型允许一个结点可以同时拥有多个双亲结点和子节点。因而同层次模型相比,网状结构更具有普遍性,能够直接地描述现实世界的实体。也可以认为层次模型是网状模型的一个特例。


关系模型是采用二维表格结构表达实体类型及实体间联系的数据模型,它的基本假定是所有数据都表示为数学上的关系。关系模型数据结构简单、清晰、具有很高的数据独立性,因此是目前主流的数据库数据模型。



关系模型的基本术语共有十三个,它们分别是:
1、关系:一个关系对应着一个二维表,二维表就是关系名。
2、属性和值域:在二维表中的列,称为属性。属性的个数称为关系的元或度。列的值称为属性值;属性值的取值范围为值域。
3、关系模式:在二维表中的行定义,即对关系的描述称为关系模式
4、元组:在二维表中的一行,称为一个元组。
5、分量:元组中的一个属性值
6、键或者码:如果在一个关系中存在这样的一个属性,使得在该关系的任何一个关系状态中的两个元组,在该属性上的值的组合都不同,即这些属性的值都能够用来唯一标识该关系的元组,则称这些属性为该关系的键或者码。
7、超键或者超码:如果在关系的一个键中移去某个属性,它仍然是这个关系的键,则称这样的键为关系的超键或者超码。
8、候选键或者候选码:如果在关系的一个键中不能移去任何一个属性,否则它就不是这个关系的键,则称这个被指定的候选键为该关系的候选键或者候选码。
9、主键或者主码:在一个关系的若干候选键中指定一个用来唯一标识该关系的元组,则称这个被指定的候选键为该关系的主键或者主码。
10、全键或者全码:一个关系模式中的所有属性的集合。
11、主属性和非主属性:关系中包含在任何一个候选键中的属性称为主属性,不包含在任何一个候选键中的属性为非主属性。
12、外键或者外码:关系中的某个属性虽然不是这个关系的主键,或者只是主键的,但它却是另外一个关系的主键时,则称之为外键或者外码。
13、参照关系与被参照关系:是指以外键相互联系的两个关系,可以相互转化。
关系数据库的规范化为了解决数据库中数据的插入、删除、修改异常等问题的一组规则。

分为5个等级:第一范式(1NF)~第五范式(5NF),NF 指Normal Form

1、第一范式(1NF):

每一个列(属性)只有一个,没有重复。同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。

2、第二范式(1NF):

数据表里的所有数据都要和该数据表的主键有完全依赖关系;如果有哪些数据只和主键的一部分有关的话,据表的主键有完全依赖关系;如果有哪些数据只和主键的一部份有关的话,它就不符合第二范式。同时可以得出:如果一个数据表的主键只有单一一个字段的话,它就一定符合第二范式(前提是该数据表符合第一范式)

  • 不符合第二范式的例子
货物类型 货物ID 货物名称 注意事项
瓷碗 1 白色瓷碗 易碎品
瓷碗 2 青花瓷碗 易碎品
瓷碗 3 雕花瓷碗 易碎品
三合板 1 普通三合板 易燃物品,注意防火
在该表中有 两个主键,即(货物类型,货物ID),货物名称字段完全依赖于这两个主键,换句话说,货物的名称完全是取决于这两个主键的值的。但 ”注意事项“这一列,仅依赖于一个主键”货物类型“。简单地说,第二范式要求每个非键属性完全依赖于主键。
那么,既然表中存在一个对主键不是完全依赖的字段,那么我们就可以确定,该表不符合第二范式。
  • 符合第二范式的例子
货物类型 货物ID 货物名称
瓷碗 1 白色瓷碗
瓷碗 2 青花瓷碗
瓷碗 3 雕花瓷碗
三合板 1 普通三合板
在该表中的主键依然是(货物类型、货物ID), 非主键字段“货物名称”,完全依赖于这两个主键,那么我们就可以说,该表是符合数据库第二范式的。
3、第三 范式(3NF):
第三范式 是要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。简而言之,第三范式就是属性不依赖于其它非主属性。 满足第三范式(3NF)必须先满足第二范式(2NF)。
           一般把数据规范到第三范式标准就可以满足需要了。


实体是指客观存在并可相互区别的事物,可以是具 体的人事物,也可以是抽象的概念、联系。
实体间有3种关系:

一对一关系;˙1对多关系;˙多对多关系



数据库3级模式结构:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。

模式(逻辑、概念模式)、内模式、外模式


模式(逻辑、概念模式)、内模式均只有一个;外模式在一个数据库中可以有多个。

模式(逻辑、概念模式):数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图;

内模式(存储模式):数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。

模式(用户模式):是模式的子集,数据库用户(应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值