N.0 结论

1)关系模式:就是二维表的表头。

2)关系模型:就是二维表的表头里面的数据(来描述实体集,用外键描述联系)。

若干个关系模式组成了关系模型

 N.1 数据库关系模式介绍

1)数据库三级模式----两级映射

(1)外模式:   数据库的视图, 用来描述用户看到或者使用那部分的数据,用户根据外模式用户数据操作语句或者程序去操作数据库中的数据,外模式的主要特点用来描述组成用户视图各个记录的组成、相互联系、数据的完整性和安全性、数据项的特征等。

(2)概念模式(也称模式或逻辑模式):表,用以描述整个数据库中的逻辑结构、用来描叙现实生活中的实体,以及它们之间的关系、从而定义记录数据项的完整性约束条件以及记录之间的联系是数据项的框架

概念模式是数据库中全体数据的逻辑结构和特征的描叙是所有用户数据的公共数据视图。

(3)内模式:    以书面格式去存储数据,负责数据存放

N.2 数据库关系模型创建流程

N.2.1 关系模型流程

 N.2.2 概念模型(CDM)

1)概念模型现在用的最多的就是E-R模型。

2)在E-R图中,实体用矩形表示,属性用椭圆表示,关系用菱形表示。

3)如下就是E-R图模型:

————————————————————————

————————————————————————

N.2.3 逻辑模型(LDM)

————————————————————————

————————————————————————

1)介绍

(1)关系默模型定义:数据以二维表的形式存放,表与表之间有关联,这种模型就叫关系模型。

(2)关系有两种含义:关系是一个二维表、关系也是表和表之间的联系。

前言: 术语: 列(属性,字段),表(关系),行(多个列构成,元组)

2)模式包括 层次模型、网状模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型。

目前关系模式是用的最多的。

3)逻辑模型的主要作用就是将E-R模型转换成相应的关系模型。这种转换要符合关系数据模型的原则。

(关系可以认为是一张表)。

4)实体转换:

将每个实体类型转换成一个关系模式,实体的属性即为关系的属性,实体的标识符转换成关系的主键。

实体转换的时候 还要主要实体间的比例关系(以下M和N是大于0的):

(1)如果实体间的联系是1:1

要将"任意一个"实体的标识符(即主键)中加入另一个实体的属性,作为另一个实体外键。

(2)如果如实体间的联系是1:N

要将"少比例的实体"的标识符中加入多比例实体的属性,作为多比例实体外键。

5)联系转换:

(1)如果如实体间的联系是M:N,就要将"两个实体"的标识符中加入联系的属性,作为联系的属性,而联系就要转成关系。

(2)如果联系自带标识符,那就要转成关系。

(3)其它的情况下 联系转不转关系就根据自己需求来决定转不转关系。

6)在进行转换的过程中 要保证遵守最基本的3NF范式,当然还有跟高的方式。高范式包括低范式。

(1)第一范式:每属性的原子性,不可拆分;

(2)第二范式:除了主键以外的其他列都依赖与该主键;

(3)第三范式:列和列之间不存在相互依赖关系;

(4)关系模型主要应用与OLTP系统中,为了保证数据的一致性以及避免冗余,所以大部分业务系统的表都是遵循第三范式的,在OLAP中一般不遵循第三范式。

拓展:BCNF表属于第四范式。

7)以下是案例:

————————————————————————

————————————————————————

————————————————————————

————————————————————————

N.2.4 建立物理模型(PDM)

1)物理模型的话就就是 通过sql语句 把逻辑模型转成真正的数据。

(1)当然如果这表分的越细,那么颗粒度就越小。

(2)什么是颗粒度?

(3)粒度就是统计的粗细程度!,比如按天统计和按年统计,那么按年统计的颗粒度就大,比较粗糙。

————————————————————————

 ————————————————————————

N.3 范式和反范式的区别

1)范式的优点:更新数据快,重复数据少,修改数据少,表很小可以在内存中执行,查询时需要更少的distinct或group by

(1)范式的缺点:查询时需要更多的关联,可能引起索引策略无效

(2)反范式的优点:所有的数据可以在一张表上显示,可以避免关联,可以设计有效的索引

(3)反范式的缺点:冗余字段较多,删除记录会造成有用数据丢失

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐