第2章 第章关系数据库 关条数据结构 关糸定义 关糸性质 关糸棋式 °关糸的究整性 实体完整性 参照完整性 用户定义完整性 关条代数 关糸数据库管狸糸统
• 关系数据结构 关系定义 关系性质 关系模式 • 关系的完整性 实体完整性 参照完整性 用户定义完整性 • 关系代数 • 关系数据库管理系统 第2章 关系数据库 第2章
21关系数据结构 211关系 基本概念 1域( Domain)定义21域是一组具有相同数据类型的值的集合。 2笛卡尔积( Cartesian Product 定义2.2给定一组域D1,D2,…,Dn,(允许部分或全部相同)。 D1,D2,…,Dn的笛卡尔积为 D1XD2×…Dn={(d1,d2,灬…,dn)ldi∈D,j=1,2,…,n} 其中每一个元素(d,d,…,dm)叫作一个m元组(n- Tuple,或简称为元组。 元素中的每一个值d叫作一个分量( Component)。 若Di(i=1,2,…,n)为有限集,其基数( Cardinal number)为 mi(i=1,2,…,n),则D1×D2×…xDn的基数为:m=mi 笛卡尔积可表示为一个二维表表中的每行对应一个元组,表中的每列对应一个域
2.1 关系数据结构 2.1.1 关 系 ⒈ 域(Domain) 定义2.1 域是一组具有相同数据类型的值的集合。 笛卡尔积可表示为一个二维表.表中的每行对应一个元组,表中的每列对应一个域。 m= ∏ mi i=1 n 若Di(i=1,2,…,n)为有限集,其基数(Cardinal number)为 mi(i=1,2,…,n),则D1×D2×…×Dn的基数为: 其中每一个元素(d1,d2,…,dn)叫作一个n元组(n-Tuple),或简称为元组。 元素中的每一个值di叫作一个分量(Component)。 定义2.2 给定一组域D1,D2,…,Dn,(允许部分或全部相同)。 D1,D2 ,…,Dn的笛卡尔积为: D1×D2×…×Dn={(d1,d2,…,dn)|di∈Dj,j=1,2,…,n } ⒉ 笛卡尔积(Cartesian Product) 基本概念
21关系数据结构 211关系 2笛卡尔积( Cartesian Product 笛卡尔积 设有域D1={4,2,3,…Q,k,D2={△,,}_,则笛卡尔积 D1×D2={(A, (A (A,),(A (k,(),(k),(k◆ 元组 PC牌值 花色 A 分量 基数:13×4=52 K
• 笛卡尔积 设有域 D2={ , , , } ,则笛卡尔积 D1×D2={(A, ),(A, ),(A, ),(A, ) . . . . . . . . . . . . (k, ),(k, ),(k, ),(k, )} D1={ A , 2 , 3 , … , Q , k }, 2.1 关系数据结构 2.1.1 关 系 ⒉ 笛卡尔积(Cartesian Product) PC K .. .. A A 牌值 花色 分量 元组 基数 : 13×4 = 52
211关系 3.关系 relation) 定义23D1×D2×…XDn的有意义的子集称为在域D,D2,…,Dn上的关系, 记为R(①1,D2…,Dn) 其中:R为关系的名;n为关系的度(目);r∈R表示r是R中的元组 4候选码( candidate key) 值能唯一标识一个元组的属性组,且不含多余属性,称该属性组为候选码。 5.主码 rimary key) 个关系有多个候选码时,选定其中的一个作为主码。 6.外部码( foreign key): 关系R的某一属性组X不是R的码,但是其他某一关系的码,称X为R的外部码 7主属性( prime attribute) 关系R中构成候选码的属性称为主属性
2.1.1 关 系 3. 关 系 (relation) 定义2.3 D1×D2×…×Dn的有意义的子集称为在域D1,D2 ,…,Dn上的关系, 记为R(D1 ,D2 ,…,Dn )。 其 中 : R为关系的名; n为关系的度(目); r∈R 表示r是R中的元组 关系R中构成候选码的属性称为主属性。 4.候选码(candidate key): 值能唯一标识一个元组的属性组,且不含多余属性,称该属性组为候选码。 一个关系有多个候选码时,选定其中的一个作为主码。 关系R的某一属性组X不是R的码,但是其他某一关系的码,称X为R的外部码。 5.主码(primary key): 6.外部码(foreign key): 7.主属性(prime attribute):
211关系 :学生:S(, SNAME,S,SD 课程:C(C, CNAME,PC#) 选课:SC(S#,C#,GR) S:候选码:S#, SNAME; 主码:S# 候选码:C#; 主码:C拄 SC:候选码:(S#,C#) 主码:(#,C#); 外部码:S#,C 关系性质 每一列中的数值是同类型的数据,来自同一个域。 不同的列可对应于同一个域,但给予不同的属性名。 同一关系中不允许有相同的记录。无重复行。 °行、列的次序可以任意交换,不影响关系的实际意义 °关系中的每一个属性值都必须是不能再分的元素
例: • 关系中的每一个属性值都必须是不能再分的元素。 • 每一列中的数值是同类型的数据,来自同一个域。 • 不同的列可对应于同一个域,但给予不同的属性名。 • 同一关系中不允许有相同的记录。无重复行。 • 行、列的次序可以任意交换,不影响关系的实际意义。 关系性质 2.1.1 关 系 学生:S(S#,SNAME,SA,SD) 课程:C(C#,CNAME,PC#) 选课:SC(S#,C#,GR) S: 候选码:S#,SNAME; 主码:S# C: 候选码:C#; 主码:C# SC: 候选码:(S#,C#); 主 码:(S#,C#); 外部码: S#,C#