属性(Attribute) 一个实体可以由若干个属性来刻画。属性是相对实体而言的,是实体所具有的特性。5 D8 { {2 s. K v# X, X- l- K
关键字(Key) 能唯一地标识实体的属性的集合称为关键字(或码)。/ r& R4 h3 @& x" i/ n+ P2 f7 {
域(Domain) 属性的取值范围称作域。6 C' Q e7 p5 b( `2 M4 E' Z
实体型(Entity Type) 一类实体所具有的共同特征或属性的集合称为实体型。一般用实体名及其属性来抽象地刻画一类实体的实体型。
# J2 s7 f t8 g; ^% {7 _) W3 D/ l$ T实体集(Entity Set) 同型实体的集合叫实体集。例如,学生就是一个实体集。实体集的名即是实体型。对于学生和(学号,姓名,年龄,系,年级)均是实体型,而学生是对实体型(学号,姓名,年龄,系,年级)所起的名称,两者是指同一客观对象。但本科生和研究生可以为相同实体型,而实体集不同。
1 l" l' t8 Y* n, X8 \. B联系(Relationship) 现实世界的事物之间是有联系的。一般存在两类联系:一是实体内部的组成实体的属性之间的联系,二是实体之间的联系。在考虑实体内部的联系时,是把属性看作为实体。一般来说,两个实体之间的联系可分为三种:/ t* u# P$ I+ k+ y7 Z
(1)一对一(1∶1)联系 若对于实体集A中的每一个实体,实体集B中至多有唯一的一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记作1∶1。0 [( c+ t" M% c, j ]. \# @9 Z _
(2)一对多(1∶n)联系 若对于实体集A中的每个实体,实体集B中有n个实体(n≥0)与之联系;反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1∶n。相应地有多对一(n∶1)联系 多对一联系,从本质上说,是一对多联系的逆转。其定义同一对多联系类似,不再赘述。' \" @, C+ R% c% |
(3)多对多(m∶n)联系 若对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系;反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之对应,则称实体集A与实体集B具有多对多联系,记作m∶n。实质上,多对多联系是任意一种联系。另外,同一实体集内的各个实体间也可以有各种联系。概念模型的表示方法最常用的是实体一联系方法(Entity-Relationship Approach),简称E-R方法。该方法是由P.P.S.Chen在1976年提出的。E-R方法用E-R图来描述某一组织的概念模型。在这里仅介绍E-R图的要点。在E-R图中:7 P9 u! h {5 V
(1)长方形框表示实体集,框内写上实体型的名称。
5 J1 z# ~5 \0 Q. V(2)用椭圆框表示实体的属性,并用有向边把实体框及其属性框连接起来。( }( x" h4 G! a" F# P
(3)用菱形框表示实体间的联系,框内写上联系名,用无向边把菱形框及其有关的实体框连接起来,在旁边标明联系的种类。如果联系也具有属性,则把属性框和菱形框也用无向边连接上。( s# h7 m! e$ N
3.三种主要的数据模型' f7 k, n2 S% `( x3 K8 ~; x
实际DBMS所支持的数据模型主要有三种:
% ^; ?/ t6 [; [/ m$ L3 {! }) d层次模型(Hierarchical Model)/ G' J8 i7 o% C, x* v6 P0 L; p
网状模型(Network Model)
; C. `8 Y, q3 y0 k; @关系模型(Relational Model)其中,关系模型是当前DBMS所支持的数据模型的主流。90年代运行的DBMS几乎都是基于关系模型的。层次模型和网状模型统称为非关系模型。非关系模型的结构可以和图论中的图相对应,比较直观,但在理论上不完备,实现效率较低,故此目前很少用。但是最近,层次模型在研究面向对象的DBMS中已得到重视。在关系模型中,数据在用户的观点中(或在用户视图中)的逻辑结构是一张二维表(Table)。( k% p7 c" Y( x1 s! F, j7 _$ R
关系(Relation),对应于平常讲的一张表。
% j) w! l8 c3 d8 z5 V& q3 ~' [元组(Tuple),表中的一行。
1 E$ E. O, l6 Y' }属性(Attribute),表中的一列称为一个属性,给每一列起一个名,称为属性名。这一列或这个属性所有可能取的值的集合称为这个属性的值域(Domain),值域中的一个元素叫做这个属性的值。3 E8 @0 O. x6 ]3 I& {
主关键字(Primary Key Attribute或Primary Key),是指能唯一标识一个元组的一个或一组属性。
" L( i1 t9 @9 D分量(Attribute value),是指元组中的一个属性值。! C/ V; a' S" y. H+ y# E' e
关系模式(Relational Schema),是对关系的描述,一般用关系名(属性名1,属性名2,…,属性名n)来表示。同层次模型和网状模型相比较,关系模型具有下列特点: |