关系(续) 8)基本关系的性质 ①列是同质的( Homogeneous) 每一列中的分量是同一类型的数据,来自同一个 域。 ②不同的列可出自同一个域 其中的每一列称为一个属性 不同的属性要给予不同的属性名
关系(续) 8) 基本关系的性质 – ① 列是同质的(Homogeneous) • 每一列中的分量是同一类型的数据,来自同一个 域。 – ② 不同的列可出自同一个域 • 其中的每一列称为一个属性 • 不同的属性要给予不同的属性名
关系(续) 例 上例中也可以只给出两个域: 人( PERSON)=张清玫,刘逸,李勇,刘晨,王敏 专业( SPECIALITY)=计算机专业,信息专业 SAP关系的导师属性和研究生属性都从 PERSON域中取值。 为了避免混淆,必须给这两个属性取不同的属性名,而不能 直接使用域名。 例如定义导师属性名为 SUPERⅤ ISOR-PERSON(或 SUPERⅤISOR) 研究生属性名为 POSTGRADUATE-PERSON(或 POSTGRADUATE) SAP(SUPERVISOR-PERSON, SPECIALITY POSTGRADUATE-PERSON
关系(续) 例: 上例中也可以只给出两个域: 人(PERSON)=张清玫,刘逸,李勇,刘晨,王敏 专业(SPECIALITY)=计算机专业,信息专业 SAP关系的导师属性和研究生属性都从PERSON域中取值。 为了避免混淆,必须给这两个属性取不同的属性名,而不能 直接使用域名。 例 如 定 义 导 师 属 性 名 为 SUPERVISOR-PERSON ( 或 SUPERVISOR) 研究生属性名为 POSTGRADUATE-PERSON ( 或 POSTGRADUATE) SAP(SUPERVISOR-PERSON,SPECIALITY , POSTGRADUATE-PERSON)
关系(续) 基本关系的性质(续) ③列的顺序无所谓 列的次序可以任意交换 遵循这一性质的数据库产品(如 ORACLE),增加 新属性时,永远是插至最后一列 但也有许多关系数据库产品没有遵循这一性质, 例如 FoxPro仍然区分了属性顺序
关系(续) 基本关系的性质(续) – ③ 列的顺序无所谓 • 列的次序可以任意交换 • 遵循这一性质的数据库产品(如ORACLE),增加 新属性时,永远是插至最后一列 • 但也有许多关系数据库产品没有遵循这一性质, 例如FoxPro仍然区分了属性顺序
关系(续) 基本关系的性质(续) ④任意两个元组不能完全相同 由笛卡尔积的性质决定 但许多关系数据库产品没有遵循这一性质。例如 Oracle, FoxPro等都允许关系表中存在两个完全 相同的元组,除非用户特别定义了相应的约束条 件
关系(续) 基本关系的性质(续) – ④ 任意两个元组不能完全相同 • 由笛卡尔积的性质决定 • 但许多关系数据库产品没有遵循这一性质。例如 Oracle,FoxPro等都允许关系表中存在两个完全 相同的元组,除非用户特别定义了相应的约束条 件
关系(续) 基本关系的性质(续) ⑤行的顺序无所谓 行的次序可以任意交换 遵循这一性质的数据库产品(如 ORACLE),插入 一个元组时永远插至最后一行 但也有许多关系数据库产品没有遵循这一性质, 例如 FoxPro仍然区分了元组的顺序
关系(续) 基本关系的性质(续) – ⑤ 行的顺序无所谓 • 行的次序可以任意交换 • 遵循这一性质的数据库产品(如ORACLE),插入 一个元组时永远插至最后一行 • 但也有许多关系数据库产品没有遵循这一性质, 例如FoxPro仍然区分了元组的顺序