欢迎来到天天文库
浏览记录
ID:26889861
大小:346.82 KB
页数:51页
时间:2018-11-29
《《rdbms的扩展》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章RDBMS的扩展关系模型中概括与聚合的扩展支持共享与递归的分子对象概念关系查询语言QUEL的扩展及其支持关系模型中的抽象数据类型XSQL语言的扩展嵌套的关系模型NF2※6.1关系模型中概括与聚集的扩展例1:关于人的特化模型示例PersonssexmaritalStatusnationalityFemalesAustriansCanadians…SinglesMalesMarried关系扩展模型——一般化的m维特化示例RSk1Skm……R11R1p1Rm1Rmpm…………扩展的关系模型的一般语法va
2、rR:genericsk1=(R11,…,R1p1);…skm=(Rm1,…,Rmpm);ofaggregatekeylists1:keyR1;…sn:keyRn;end对该语法的说明对generic关系R,具有n个属性,其中:-若是一般的类型,仅用类型符标识它-若是一个聚集引用,即若引用一个generic关系类型,则需要加前缀“key”进行区分对R可以特化,其m维的特化属性用sk1…skm表示每一个特化属性ski将R的实例化对象划分成pi个不相交的集合,每一个集合为R的一个特化集因此,若R有m维特化属
3、性,则将R的实例集进行m种划分,每一种划分都可以获得R的Pi个特化集(Ri1,…,Ripi)M个特化属性sk1,…,skm属于R的属性集s1,…,sn的子集。正确定义一个generic的关系R需要如下规则:R的n个属性中,每个属性的类型定义Ri(1≤i≤n)是以下两种类型:(1)是一个类型标识符(前缀key必须不出现),它表示了Ri是一个原子值。(2)是一个generic的标识符,则前缀key必须在定义中出现,它表示对其他对象的引用。Keylist——主关键属性表是{s1,…,sn}的子集每一个特化类型
4、Rij(1≤i≤m,1≤j≤Pi)都是一个generic标识符,其关键字域与R的相同,且其属性在定义时就要copy父类型除特化属性外的所有属性。特化属性Ski(1≤i≤m)都与R的某个属性Sj(1≤j≤n)相同。如果Ski与Sj相同,则Sj的类型—Rj的值域是(Ri1,…,Ripi)。一个应用实例—基于扩展关系模型的CSG表示参看P31页CSG的形式化表示:::=::=
5、6、narguments>7、::=cube8、cylinder9、cone10、…::=rotate11、scale12、translate13、…::=union14、intersection15、difference16、…由此看出,一个object有三种类型:1.Prim_obj(原始对象)2.Mot_obj(运动对象)3.Comp_obj(组合对象)如下图:扩展CSG实例化关系模型Mech_objIDMAN17、ARG_OBJLEFT_ARGRIGHT_ARGTYPEMot_objPrim_objComp_objTMATPRICEOP_CODEPTYPEcylinder…cuboidLENGTHWIDTHHEIGHTCSG的关系模型表示(1)varmech_obj:generic(2)TYPE=(prim_obj,mot_obj,comp_obj);(3)of(4)aggregate[ID](5)ID:identifier;(6)MAN:manufacturer;(7)TYPE:structural_comp(18、8)endMech_obj的三个特化子类型说明varprim_obj:genericprim_obj是mech_obj的PTYPE=(cylinder,…,cuboid);特化,而本身通过特化控制of属性PTYPE进一步被特化aggregate[ID]为原始对象集合ID:identifier;这两个属性是父类属性,MAN:manufacturer;除控制特化的TYPE属性MAT:material;外的全部属性的复制,以PRICE:money;此实现继承的概念PTYPE:geom_form;endvarc19、uboidcuboid不是generic类型,aggregate[ID]它没有进一步特化(没有子类)ID:identifier;MAN:manufacturer;这四个属性继承父类MAT:material;而来PRICE:money;LENGTH:real;这三个属性是cuboidWIDTH:real;自身的进一步描述HEIGHT:real;endvarmot_objmot_obj也不是generic类型aggregate[ID]ID:id
6、narguments>
7、::=cube
8、cylinder
9、cone
10、…::=rotate
11、scale
12、translate
13、…::=union
14、intersection
15、difference
16、…由此看出,一个object有三种类型:1.Prim_obj(原始对象)2.Mot_obj(运动对象)3.Comp_obj(组合对象)如下图:扩展CSG实例化关系模型Mech_objIDMAN
17、ARG_OBJLEFT_ARGRIGHT_ARGTYPEMot_objPrim_objComp_objTMATPRICEOP_CODEPTYPEcylinder…cuboidLENGTHWIDTHHEIGHTCSG的关系模型表示(1)varmech_obj:generic(2)TYPE=(prim_obj,mot_obj,comp_obj);(3)of(4)aggregate[ID](5)ID:identifier;(6)MAN:manufacturer;(7)TYPE:structural_comp(
18、8)endMech_obj的三个特化子类型说明varprim_obj:genericprim_obj是mech_obj的PTYPE=(cylinder,…,cuboid);特化,而本身通过特化控制of属性PTYPE进一步被特化aggregate[ID]为原始对象集合ID:identifier;这两个属性是父类属性,MAN:manufacturer;除控制特化的TYPE属性MAT:material;外的全部属性的复制,以PRICE:money;此实现继承的概念PTYPE:geom_form;endvarc
19、uboidcuboid不是generic类型,aggregate[ID]它没有进一步特化(没有子类)ID:identifier;MAN:manufacturer;这四个属性继承父类MAT:material;而来PRICE:money;LENGTH:real;这三个属性是cuboidWIDTH:real;自身的进一步描述HEIGHT:real;endvarmot_objmot_obj也不是generic类型aggregate[ID]ID:id
此文档下载收益归作者所有