1. E-R 模型的基本概念
实体:现实世界中的事物可以抽象成为实体,实体是概念世界中的基本单 位,它们是客观存在的且又能相互区别的事物;
属性:现实世界中事物均有一些特性,这些特性可以用属性来表示; 码:唯一标识实体的属性集称为码; 域:属性的取值范围称为该属性的域;
联系:在现实世界中事物间的关联称为联系。 两个实体集间的联系实际上是实体集间的函数关系,这种函数关系可以有下面几种:一对一的关系、一对多或多对一关系、多对多关系。 2. E-R 模型的的图示法
E-R 模型用 E-R 图来表示。
1)实体表示法:在 E-R 图中用矩形表示实体集,在矩形内写上该实体集的名字; 2)属性表示法:在 E-R 图中用椭圆形表示属性,在椭圆形内写上该属性的名称;
第33页共35页
3)联系表示法:在 E-R 图中用菱形表示联系,菱形内写上联系名。
7.5.6 关系模型
关系模式采用二维表来表示,一个关系对应一张二维表。可以这么说,一个关系就是一个二维表,但是一个二维表不一定是一个关系。
元组:在一个二维表(一个具体关系)中,水平方向的行称为元组。元组对应存储文件中的一个具体记录;
属性:二维表中垂直方向的列称为属性,每一列有一个属性名;
域:属性的取值范围,也就是不同元组对同一属性的取值所限定的范围。 在二维表中惟一标识元组的最小属性值称为该表的键或码。二维表中可能有 若干个健,它们称为表的侯选码或侯选健。从二维表的所有侯选键选取一个作为用户使用的键称为主键或主码。表 A 中的某属性集是某表 B的值为A的外键或外码。
关系模型采用二维表来表示,二维表一般满足下面 7 个性质: ①二维表中元组个数是有限的——元组个数有限性; ②二维表中元组均不相同——元组的唯一性;
③二维表中元组的次序可以任意交换——元组的次序无关性;
④二维表中元组的分量是不可分割的基本数据项——元组分量的原子性; ⑤二维表中属性名各不相同——属性名唯一性;
⑥二维表中属性与次序无关,可任意交换——属性的次序无关性; ⑦二维表属性的分量具有与该属性相同的值域——分量值域的统一性。 关系操纵:数据查询、数据的删除、数据插入、数据修改。
关系模型允许定义三类数据约束,它们是实体完整性约束、参照完整性约束以及用户定义的完整性约束。
7.5.7 关系代数
1. 传统的集合运算
(1)投影运算 从关系模式中指定若干个属性组成新的关系称为投影。
投影是从列的角度进行的运算,相当于对关系进行垂直分解。经过投影运算 可以得到一个新的关系,其关系模式所包含的属性个数往往比原关系少,或者属 性的排列顺序
第34页共35页
不同。
(2)选择运算 从关系中找出满足给定条件的元组的操作称为选择。
选择是从行的角度进行的运算,即水平方向抽取记录。经过选择运算得到的 结果可以形成新的关系,其关系模式不变,但其中的元组是原关系的一个子集。
(3)迪卡尔积
设有 n 元关系 R 和 m 元关系 S,它们分别有 p 和 q 个元组,则 R与 S 的笛卡儿积记为:R×S。它是一个 m+n 元关系,元组个数是 p×q。 2. 关系代数的扩充运算
(1)交
假设有 n 元关系 R 和 n 元关系 S,它们的交仍然是一个 n 元关系,它由属于 关系 R 且由属于关系 S 的元组组成,并记为 R∩S,它可由基本运算推导而得:
R∩S = R – (R–S)
7.5.8 数据库设计与原理
数据库设计中有两种方法,面向数据的方法和面向过程的方法:
面向数据的方法是以信息需求为主,兼顾处理需求;面向过程的方法是以处理需求为主,兼顾信息需求。由于数据在系统中稳定性高,数据已成为系统的核心,因此面向数据的设计方法已成为主流。
数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解 成目标独立的若干阶段。它们是:需求分析阶段、概念设计阶段、逻辑设计阶段、 物理设计阶段、编码阶段、测试阶段、运行阶段和进一步修改阶段。在数据库设 计中采用前 4 个阶段。
第35页共35页