
∏ sno,pno,jno(spj)÷∏ sno,pno(σ sno='s1'(spj))
∏ sno,pno,jno(spj)从表spj中选出sno,pno,jno字段构成新表(集合A),
∏ sno,pno(σ sno='s1'(spj)) 先从表spj中筛选出sno=s1的记录,然后选出sno,pno字段构成新表(集合B),
÷你知道是什么意思吧,上面的÷就是由sno,pno,jno字段构成的集合A排除掉A中没有集合B的部分,留下有集合B的部分,所以你做对了
还有,你现在是在学ACCESS还是SQL SERVER啊,这是我以前做过的
关系模式仅涉及关系名、各属性名、域名、属性向域的映象四部分。
它可以形式化地表示为:R、U、D、DOM、 F。其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。
现实世界随着时间在不断地变化,因而在不同的时刻,关系模式的关系也会有所变化。但是,现实世界的许多己有事实限定了关系模式所有可能的关系必须满足一定的完整性约束条件。这些约束或者通过对属性取值范围的限定。
扩展资料:
数据库中,关系模式是型,关系是值,关系模式是对关系的描述。
1、关系实质上是一张二维表,表的每一行为一个元组,每一列为一个属性。一个元组就是该关系所涉及的属性集的笛卡尔积的一个元素。关系是元组的集合,
因此关系模式必须指出这个元组集合的结构,即它由哪些属性构成,这些属性来自哪些域,以及属性与域之间的映象关系。
2、一个关系通常是由赋予它的元组语义来确定的。
元组语义实质上是一个n目谓词(n是属性集中属性的个数,凡使该n目谓词为真的笛卡尔积中的元素(或者说凡符合元组语义的那部分元素)的全体就构成了该关系模式的关系。
参考资料:
百度百科-关系数据库
三级模式的关系
模式(概念模式)是数据库的核心与关键
内模式依赖于模式,独立于外模式和存储设备
外模式面向具体的应用,独立于内模式和存储设备
应用程序依赖于外模式,独立于模式和内模式
这个需要跟两级映射一起来理解(参考更易理解)。
三级模式
外模式:应用程序用到的部分数据的逻辑结构。一个数据库可以有多个外模式。
概念模式(模式、逻辑模式):数据库管理员用到的视图,就是我们在DBMS的可视化界面中看到的数据库对象。一个数据库只有一个概念模式。
内模式:数据库的最低层模式,是数据物理结构和存储方式的描述。一个数据库只有一个内模式。
关系:用户应用程序根据外模式进行数据 *** 作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;另一方面,通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。
两级映射
外模式-概念模式的映射
概念模式-内模式的映射
在关系模型中,数据的逻辑结构是一张二维表。
在数据库中,满足下列条件的二维表称为关系模型:
① 每一列中的分量是类型相同的数据;
② 列的顺序可以是任意的;
③ 行的顺序可以是任意的;
④ 表中的分量是不可再分割的最小数据项,即表中不允许有子表;
⑤ 表中的任意两行不能完全相同。
关系数据库采用关系模型作为数据的组织方式。 关系数据库因其严格的数学理论、使用简单灵活、数据独立性强等特点,而被公认为最有前途的一种数据库管理系统。它的发展十分迅速,目前已成为占据主导地位的数据库管理系统。自20世纪80年代以来,作为商品推出的数据库管理系统几乎都是关系型的,例如,Oracle,Sybase,Informix,Visual FoxPro,mysql,sqlserver等。
关系模型范式
只有满足一定条件的关系模式,才能避免 *** 作异常。
关系模式要满足的条件称为规范化形式,简称范式。
下面介绍四种不同程度的范式,由低级向高级:
1、第一范式(1NF)
在关系模式R的每一个具体关系r中,如果每个属性值都是不可能再分的最小数据单元,则称R是第一范式。记为R∈1NF。1NF是关系数据库能够保存数据并且正确访问数据的最基本条件。
2、第二范式(2NF)
如果关系模式R(U,F)中的所有非主属性都完全函数依赖于任意一个候选关键字,则称关系R是属于第二范式。记为R∈2NF。
3、第三范式(3NF)
如果关系模式R(U,F)中所有非主属性对任何侯选关键字都不存在传递依赖,则称关系R是属于第三范式。记为R∈3NF。
4、BCNF
如果关系模式R(U,F)R属于1NF,对任何非平凡依赖的函数依赖X→Y(Y!→X)X均包含码。记为R∈BCNF。如果R是BCNF则一定是3NF;反之则不行。
一个低级范式的关系模式,可以通过分解方法转换成若干个高一级范式的关系模式的集合,也可以说任何一个高层的范式,总是能够满足低层的范式。
应该分为两大类:
1传统的数学集合的关系运算
2数据库专有的关系运算
现在关系数据库本身是一个二维表,相当于一个有序的链表,也可以看成是数学中的集合。
(1)表与表之间的运算可以看成是集合和集合之间的运算,支持"与"、"或"、“非”和
“异或”等大部分算术运算。
(2)“投影运算”:即对数据库的一列(字段)或多列的运算。
关系模型数据库的优点:
1、关系模型和格式化模型不同,它是简历在严格的数学概念的基础上的。
2、关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据库的检索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。
3、关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
关系模型数据库的缺点:
1、由于存取路径岛屿用户是隐蔽的,查询效率往往不如格式化数据模型。
2、为了提高性能,数据库管理系统必须到用户的查询请求进行优化,因此增加了开发数据库管理系统的难度。
扩展资料:
其他数据库的优缺点:
层次数据库的优点:
1、数据结构比较简单清晰。
2、层次数据库的查询效率高。因为层次模型中记录之间的联系用有向边表示,这种练习在DBMS中常常用指针来实现,因此这种练习也就是记录之间的存取路径。当药存取某个节点的记录值,DBMS就沿着这一条路径很快找到该记录值,所以层次数据库的性能优于关系数据库,不低于网状数据库。
3、层次数据模型提供了良好的完整性支持。
层次数据库的缺点:
1、现实世界中很多联系都是非层次性的。
2、对插入和产出 *** 作的限制比较多,因此应用程序的编写比较复杂、
3、由于结构严密,层次命令趋于程序化。
名称定义
假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。可以扩展到多个集合的情况。类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合,则A与B的笛卡尔积表示所有可能的选课情况。
笛卡儿积的运算性质
由于有序对<x,y>中x,y的位置是确定的,因此A×B的记法也是确定的,不能写成B×A
笛卡儿积也可以多个集合合成,A1×A2×…×An
笛卡儿积的运算性质 一般不能交换
笛卡儿积,把集合A,B合成集合A×B,规定
A×B={<x,y>½xÎAÙyÎB}
推导过程
给定一组域D1,D2,…,Dn,这些域中可以有相同的。D1,D2,…,Dn的笛卡尔积为:
D1×D2×…×Dn={(d1,d2,…,dn)|diDi,i=1,2,…,n}
所有域的所有取值的一个组合不能重复
例 给出三个域:
D1=SUPERVISOR ={ 张清玫,刘逸 }
D2=SPECIALITY={计算机专业,信息专业}
D3=POSTGRADUATE={李勇,刘晨,王敏}
则D1,D2,D3的笛卡尔积为D:
D=D1×D2×D3 =
{(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),
(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),
(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),
(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),
(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),
(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }
这样就把D1,D2,D3这三个集合中的每个元素加以对应组合,形成庞大的集合群。
本个例子中的D中就会有2X2X3个元素,如果一个集合有1000个元素,有这样3个集合,他们的笛卡尔积所组成的新集合会达到十亿个元素。假若某个集合是无限集,那么新的集合就将是有无限个元素。
序偶与笛卡尔积
在日常生活中,有许多事物是成对出现的,而且这种成对出现的事物,具有一定的顺序。例如,上,下;左,右;3〈4;张华高于李明;中国地处亚洲;平面上点的坐标等。一般地说,两个具有固定次序的客体组成一个序偶,它常常表达两个客体之间的关系。记作〈x,y〉。上述各例可分别表示为〈上,下〉;〈左,右〉;〈3,4〉;〈张华,李明〉;〈中国,亚洲〉;〈a,b〉等。
序偶可以看作是具有两个元素的集合。但它与一般集合不同的是序偶具有确定的次序。在集合中{a,b}={b,a},但对序偶〈a,b〉≠〈b,a〉。
设x,y为任意对象,称集合{{x},{x,y}}为二元有序组,或序偶(ordered pairs),简记为<x,y> 。称x为<x,y>的第一分量,称y为第二分量。
定义3-41 对任意序偶<a,b> , <c, d > ,<a,b> = <c, d > 当且仅当a=c且b = d 。
递归定义n元序组 <a1,… , an>
<a1,a2> ={{a1},{a1 , a2}}
<a1 , a2 , a3 > = { {a1 , a2},{a1 , a2 , a3}}
= < <a1 , a2 > , a3 >
<a1,…an> = <<a1,…an-1>, an>
两个n元序组相等
< a1,…an >= < b1,…bn >Û(a1=b1) ∧ …∧ (an=bn)
定义3-42 对任意集合 A1,A2 , …,An,
(1)A1×A2,称为集合A1,A2的笛卡尔积(Cartesian product),定义为
A1 ×A2={x | $u $v(x = <u,v>∧u ÎA1∧vÎA2)}={<u,v> | u ÎA1∧vÎA2}
(2)递归地定义 A1 × A2× … × An
A1 × A2×… × An= (A1× A2 × …× An-1)×An
例题1 若A={α,β},B={1,2,3},求A×B,A×A,B×B以及(A×B)Ç(B×A)。
解 A×B={〈α,1〉,〈α,2〉,〈α,3〉,〈β,1〉,〈β,2〉,<β,3〉}
B×A={〈1,α〉,〈1,β〉,〈2,α〉,〈2,β〉,〈3,α〉,〈3,β〉}
A×A={〈α,α〉,〈α,β〉,〈β,α〉,〈β,β〉}
B×B={〈1,1〉,〈1,2〉,〈1,3〉,〈2,1〉,〈2,2〉,〈2,3〉,〈3,1〉,〈3,2〉,〈3,3〉}
(A×B)Ç(B×A)=Æ
由例题1可以看到(A×B)Ç(B×A)=Æ
我们约定若A=Æ或B=Æ,则A×B=Æ。
由笛卡尔定义可知:
(A×B)×C={〈〈a,b〉,c〉|(〈a,b〉∈A×B)∧(c∈C)}
={〈a,b,c〉|(a∈A)∧(b∈B)∧(c∈C)}
A×(B×C)={〈a,〈b,c〉〉|(a∈A)∧(〈b,c〉∈B×C)}
由于〈a,〈b,c〉〉不是三元组,所以
(A×B)×C ≠A×(B×C)
定理3-41 设A, B, C为任意集合,表示 È,Ç或 – 运算,那么有如下结论:
笛卡尔积对于并、交差运算可左分配。即:
A×(BC)=(A×B)(A×C)
笛卡尔积对于并、交差运算可右分配。即:
(BC) ×A=(B×A)(C×A)
¤ 当表示 È时,结论(1)的证明思路:(讨论叙述法)
先证明A×(B È C)Í(A×B) È (A×C) 从<x,y>∈A×(BÈC)出发,推出<x,y>∈(A ×B) È (A×C)
再证明(A×B) È (A×C) Í A×(B È C)
从<x,y>∈(A×B) È (A×C)出发,推出<x,y>∈A×(BÈC)
当表示 È时,结论(2)的证明思路:(谓词演算法) 见P-103页。¤
定理3-42 设A, B, C为任意集合,若C ≠ F,那么有如下结论:
AÍBÛ(A×C ÍB×C) Û (C×AÍC×B) ¤
定理前半部分证明思路 :(谓词演算法)
先证明AÍB Þ (A×CÍB×C)
以AÍB 为条件,从<x,y>∈A×C出发,推出<x,y>∈B×C
得出(A×CÍB×C)结论。
再证明(A×C ÍB×C) Þ AÍB
以C≠F为条件,从x∈A出发,对于y∈C,利用Þ附加式,推出x∈B
得出(AÍB)结论。 见P-103页。 ¤
定理3-43 设A, B, C, D为任意四个非空集合,那么有如下结论:
A×B Í C×D的充分必要条件是AÍ C,BÍ D
¤证明思路:(谓词演算法)
先证明充分性: A×B Í C×D Þ AÍ C,BÍ D
对于任意的x∈A、y∈B,从<x,y>∈A×B出发,利用条件A×BÍ C×D, <x,y>∈C×D,推出x∈C, y∈D。
再证明必要性: AÍ C,BÍ D ÞA×BÍ C×D
对于任意的x∈A、y∈B,从<x,y>∈A×B出发,推出<x,y>∈C×D
以上就是关于高手赐教!数据库的关系代数全部的内容,包括:高手赐教!数据库的关系代数、数据库中“关系模式”的定义是什么、数据库的三级模式及它们之间的关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)