①实体表示法:在E-R图中用矩形表示实体集,在矩形内写上该实体集的名字; ②属性表示法:在E-R图中用椭圆形表示属性,在椭圆形内写上该属性的名称; ③联系表示法:在E-R图中用菱形表示联系,菱形内写上联系名。
4.6 关系模型
关系模式采用二维表来表示,一个关系对应一张二维表。可以这么说,一个关系就是一个二维表,但是一个二维表不一定是一个关系。
? 元组:在一个二维表(一个具体关系)中,水平方向的行称为元组。元组对应存储文件中的一个具体记录;
? 属性:二维表中垂直方向的列称为属性,每一列有一个属性名;
? 域:属性的取值范围,也就是不同元组对同一属性的取值所限定的范围。
在二维表中惟一标识元组的最小属性值称为该表的键或码。二维表中可能有若干个健,它们称为表的侯选码或侯选健。从二维表的所有侯选键选取一个作为用户使用的键称为主键或主码。表A中的某属性集是某表B的键,则称该属性值为A的外键或外码。
关系模型采用二维表来表示,二维表一般满足下面7个性质: ①二维表中元组个数是有限的——元组个数有限性; ②二维表中元组均不相同——元组的唯一性;
③二维表中元组的次序可以任意交换——元组的次序无关性;
④二维表中元组的分量是不可分割的基本数据项——元组分量的原子性; ⑤二维表中属性名各不相同——属性名唯一性;
⑥二维表中属性与次序无关,可任意交换——属性的次序无关性; ⑦二维表属性的分量具有与该属性相同的值域——分量值域的统一性。 关系操纵:数据查询、数据的删除、数据插入、数据修改。
关系模型允许定义三类数据约束,它们是实体完整性约束、参照完整性约束以及用户定义的完整性约束。
4.7 关系代数
1. 传统的集合运算 (1)投影运算
从关系模式中指定若干个属性组成新的关系称为投影。
投影是从列的角度进行的运算,相当于对关系进行垂直分解。经过投影运算可以得到一个
新的关系,其关系模式所包含的属性个数往往比原关系少,或者属性的排列顺序不同。
(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)
4.8 数据库设计与原理
数据库设计中有两种方法,面向数据的方法和面向过程的方法:
面向数据的方法是以信息需求为主,兼顾处理需求;面向过程的方法是以处理需求为主,兼顾信息需求。由于数据在系统中稳定性高,数据已成为系统的核心,因此面向数据的设计方法已成为主流。
数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解成目标独立的若干阶段。它们是:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段和进一步修改阶段。在数据库设计中采用前4个阶段。