≯ 列的顺序是可以任意交换的。≯ 同一关系中不能有两个完全相同的元组存在。≯ 元组的顺序可以任意交换。≯ 每一个分量必须是不可再分的数据项。 在一个关系里,有些属性能唯一地识别元组,例如在管道孔的实体表中,属性PIPE.PATH NUM和 NUM和PIPENUM就可以唯一地识别元组,即只要给出PIPE.PATHPIPE NUM值,就能够在管道孔的实体关系中唯一地识别一个元组。但是有很多其他的属性则不具备这种性质,例如在管道孔的实体关系中.还存在其他的属性:如ENDWELL WELL NUM和BEGNUM。这两个属性只是起到标识该实体的作用,并不能唯一地识别一个元组,因为一方面两个标识井号之间可能出现两条管道孔,另外一方面可能与上一层的实体 即管路 出现相同的标识情况,所以在这里这两个属性不能成为管道孔的主键。从上面的例子中可以看出,实际上主键的选择可以是单个的,也可以是多个。但是我们有一条原则就是,主键的选择最好不要太多.这样一方面使得所建立的实体关系过于复杂,增加开销,另一方面也给的维护上也带来额外的负担,因为我在后面将会讲到,实体和实体之间是通过主、外键来建立关联关系的,主键选择多的话,该实体与其他实体之间的关联关系的定义就会更复杂,这样我们在对的数据的完整性维护上所要进行的工作就会更加困难。
综合以上的原因,建议在对主键的选择上,应该全面考虑,选择一个最佳的方案。 F面我们看一下管道孔的实体表的实例来了解属性以及主键的情况: 9 PIPE_PATH—NUM…. PIPE_NUM BEGWELLNUM ENDWELLNUM HOLE—QTY ARRANGEFORM DESCRIPTIoN注:以上的实体表中,加横线上方的属性代表该实体的主键,下方的是非主键属性。 具有唯一标识元组的属性或最小属性组称为关系的候选关键字。候选关键字可以是唯一的,也可以是多个可选的。在一个关系中,如果只有一个候选关键字,那么该候选关键字就指定为关系的主关键字。有时候一个关系中有多个候选关键字,则可以指定其中任何一个为主关键字。当然这里选择主观键字不是任意的,它必须结合实体属性本身的含义,以及一些规范来选择,这些规范性的东西,也就是符合范式的要求将在后面讲到。 我们将关系定义为笛卡儿积子集,那么我们在面对一个大的系统,而实际上是面对一个大的属性的集合。那么我们在对这个大的数据系统进行建模,将它构造成一个关系模式时,使得它不仅能准确地反映现实的系统,而且适合子应用,这就是的逻辑设计问题了。2.2关系模式的提出 在设计中主要涉及关系的组成、属性之间的一些联系性质,对于这些关系的性质描述,就称为关系模式。
而一个关系模式库,可以包含多个不同的关系模式,一个关系的全部模式的集合,称为关系模式。关系实际上是一张二维表,表的每一行为一个元组,每一列是一个属性。关系是元组的集合,即笛卡儿积的一个子集.因而,关系模式也就是这个元组集合在结构上的描述。 现实世界随着时间的不断变化,在不同的时刻关系模式的关系也会变化。但是现实世界的许多已知事实却限定了关系模式所有可能的关系必须满足一定的约束。我在前面已经谈及到了这一点,PRACLE提供了约束的丁具,你可以通过约束来对中的实体表进行一些基本的维护。比如主、外键约束,检查约束等等。但是仅有这些是不够的。 我们以支撑系统中的管道子系统为例来说明建立关系模式时应该遵循的规则。 管道子系统中首先包含以下实体,它们在实际中是客观存在的。即管路,管道,管道孔以及井。那么我们在面对这样一个大的系统时,也就是面对大量的实体组成以及它们中包含的属性,如果用一张大表来对系统建库的话,将会面临诸多的问题: · 首先,我们建立的实体表应当代表一个明确的概念,这样我们才能够对该实体确 定主键属性,但是如果定义称为一张单个的表,虽然从概念上说可以代表这个系 统,但是主键如何选择。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-37192-7.html
要让自己的生活不一样才好
不过这个混乱本来就是美国人制造的
小王子
小米电源不需要抢吧