数据库原理--关系1

目录

一、表的基本构成要素

二、域(Domain)

三、笛卡尔积 

四、关系模式 

五、关系模式与关系

六、关系的特性


一、表的基本构成要素

表又被叫做关系,在数据库当中,我们可以把行叫做元组和记录,而列在数据库当中通常被我们叫做字段或者属性。除此之外,表头也就是标题通常被我们叫做模式。

二、域(Domain)

  • 一组值的集合,这组值具有相同的数据类型
  • 如整数的集合、字符串的集合、全体学生的集合
  • 集合中元素的个数称为域的基数(Cardinality)

三、笛卡尔积 

  • 一组域D1,D2……, D,的笛卡尔积为:D,xD₂x...xDn={(d 1,d2……,dn)|di∈Di,i=1,..,n }
  • 元组(d1,d2,….,dn)的每一个值d,叫做一个分量(component)
  • 元组(d1,d2,…,dn)是从每一个域任取一个值所形成的一种组合,笛卡尔积是所有这种可能组合的集合,即:笛卡尔积是由n个域形成的所有可能的n-元组的集合
  • 若Di的基数为mi,则笛卡尔积的基数,即元组个数为:m1xm2x...xmn
m1
R1
a
b
m2
R2S2
bd
ce
m1×m2笛卡尔积
R1R2S2
abd
ace
bbd
bce
  • 由于笛卡尔积中的所有元组并不都是有意义的,因此,关系(Relation)也可以这样理解,一组域D1,D2……,Dn的笛卡尔积的子集。
  • 笛卡尔积中具有某一方面意义的那些元组被称作一个关系(Relation)
  • 由于关系的不同列可能来自同一个域,为区分,需要为每一列起一个名字,该名字叫属性名。

四、关系模式 

关系可用R(A1:D1,A2:D2,….,An:Dn)表示,可简记为R(A1,A2,…,An),这种描述又被称为关系模式(Schema)或表标题(head)

R是关系的名字,Ai是属性,Di是属性所对应的域,n是关系的度或目(degree),关系中元组的数目称为关系的基数(cardinality)

例如下图的关系为3目关系,描述为家庭(丈夫:男,妻子:女人,子女:儿童)或家庭(丈夫,妻子,子女)

家庭
丈夫妻子子女
张三李四王五
王二麻子王子

关系模式R(A1:D1,A2:D2,…,An:Dn)中属性向域的映象在很多DBMS中一般直接说明为属性的类型、长度等

例如:
Student( s# char(8),Sname char(10),Ssex char(2),Sage integer, D# char(2),Sclass char(6));
sC(s# char(8),C# char(3), Grade float(1));

五、关系模式与关系

  • 同一关系模式下,可有很多的关系
  • 关系模式是关系的结构,关系是关系模式在某一时刻的数据
  • 关系模式是稳定的,而关系是某一时刻的值,是随时间可能变化的

Student(S# char(8), Sname char(10), Ssex char(2), Sage integerD# char(2),Sclass char(6))

六、关系的特性

  • 列是同质:即每一列中的分量来自同一域,是同一类型的数据
列不同质
姓名年龄
张三20
李四23
23王五

 第四行就是列不同质

  • 不同的列可来自同一个域,称其中的每一列为一个属性,不同的属性要用不同的属性名。

关系模式R(A 1:D1,A2:D2,……,An:Dn)中,A (i=1,…,n)必须是不同的,而D:(i=1.…,n)可以是相同的

例:

我们定义一个域为STU=所有男学生、女学生集合=(李基,张鹏,王芳,刘玉,李健,张容,张峰},则下述“学生表”关系的二个列将来自同一个域STU,因此需要不同的属性名“男生”“女生”以示区分。

学生表
男生女生
李基王芳
张鹏刘玉
张峰李健
  • 列位置互换性:区分哪一列是靠列名
  • 行位置互换性:区分哪一行是靠某一或某几列的值(关键字/键字/码字)
  • 关系是以内容(名字或值)来区分的,而不是属性在关系的位置来区分
  • 理论上,关系的任意两个元组不能完全相同。(集合的要求:集合内不能有相同的两个元素);现实应用中,表(Table)可能并不完全遵守此特性。个分量都相同。
  • 元组相同是指两个元组的 各个分量都相同
  • 在关系当中不能存在相同的元组,与表不同
  • 在关系当中,属性是不可再分的,这里与表也不同
  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿巴阿巴啊啊啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值