资源描述:
《[理学]数据库-第二章无qbe》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库系统原理教程DatabaseSystems关系数据库自从诞生以来,逐渐成为目前最为先进的数据库系统,较有代表性的关系数据库有70年代末IBM公司的SystemR,ORACLE公司的ORACLE系统,80年代推出的SQL/DS等。80年代以来,先后出现dBASE,FOXBASE,FOXpro以及VisualFOXpro等系统,极大的推动了关系数据库的发展和完善。2.1关系数据库概述关系数据库系统是建立在关系模型上的数据库系统组成:关系数据结构关系操作完整性约束数据结构两维的扁平表数据操作关系代数关系演算关系数据模型:数据的完整
2、性实体完整性参照完整性用户定义的完整性关系数据语言关系代数关系演算关系代数与关系演算双重特点的语言元组关系演算语言域关系演算语言SQLQBEAPLHA,QUELISBL2.2关系数据结构关系模型的数据结构非常单一实体及实体间的联系都用关系表示,关系就是一张二维表关系示例(ExampleofaRelation)1)域:域是一组具有相同数据类型的值的集合。和以前域的概念本质上是一样的,只不过抽象为数据类型。1.关系例:实数,{0,1},…定义:给定一组域D1,D2,…,Dn,这些域中可以有相同的。D1,D2,…,Dn的笛卡儿积为:D1
3、×D2×…×Dn={(d1,d2,…,dn)
4、di∈Di,i=1,2,…,n}2)笛卡儿积其中每一个元素(d1,d2,…,dn)叫做一个n元组或简称元组。元组中的每一个值di叫做一个分量。若Di(i=1,2,…,n)为有限集,其基数为mi(i=1,2,…,n),则D1×D2×…×Dn的基数M为:例子:D1=SUPERVISOR=张清枚,刘艺D2=SPECIALITY=计算机,信息D3=POSTGRADUATE=李勇,刘晨,王敏笛卡儿积:D1×D2×D3={(张清枚,计算机,李勇),(张清枚,计算机,刘晨),(张清枚,计算机,王敏)
5、,(张清枚,信息,李勇),……()}该笛卡儿积的基数为:2×2×3=12关系定义:D1×D2×…×Dn的子集叫做在域D1,D2,…,Dn上的关系表示:R(D1,D2,…,Dn)D1×D2×…×Dn表示的是域上所有可能的组合,很多元组是无意义的数据,关系包含在D1×D2×…×Dn之中,把关系定义为D1×D2×…×Dn的子集。这里R表示关系的名字,n是关系的目和度。关系中的每个元素是关系中的元组,通常用t表示。当n=1时,称该关系为单元关系。当n=2时,称该关系为二元关系。关系是笛卡儿积的有限子集,所以关系也是一个二维表,表的每行对应
6、一个元组,表的每列对应一个域。由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性。n目关系必有n个属性。例:设D1={0,1},D2={a,b,c},则D1×D2={(0,a),(0,b),(0,c),(1,a),(1,b),(1,c)}R={(0,b),(0,c),(1,a),(1,b)}D1D2域0a元组0b0cR1a1b1c属性类型每个关系的属性都有一个名称。各属性的取值范围集称为属性的域属性的值通常要求是原子性的,即不能分割例如,多值属性可以不是原子性的。组合属性值不是原子性的空值这一特殊的值包含在所有的域中。空
7、值导致了许多操作定义的复杂性。在主体表示中可以先忽略空值,将其放在以后再考虑。码(Keys)如果K是可以唯一R中元组的,则K是超码,它应该可以对任何可能的关系都有这种唯一性。Example:{customer-name,customer-street}and{customer-name}上述都是客户表中的超码(前提是没有同名的客户存在)如果K是最小的形式,则K是候选码。Example:{customer-name}是客户表中的候选码,因为它既是超码,同时又不可能找到比它更小的集合形式了。(假定不允许同名客户存在)在一个关系中,有些
8、属性能唯一的识别元组,但有些属性不具备这种性质。例如:在零件的关系中P(PNO,PNAME,COLOR,WEIGHT)PNO可以唯一的识别某一个零件,但COLOR就不能。候选码:定义:具有唯一标识关系中元组的属性或最小属性组,称为该关系的候选码(关键字)。在一个关系中如果只有一个候选码,那么该候选码就指定为该关系的主码。如果由多个候选码,则可以指定其中任一个为主码。主码的诸属性为主属性;不包含在任何候选码中的属性称为非码属性。最简:只有一个属性最多:关系模式的全部属性组——全码SnoSnameSsexSagesdept95001张
9、三男25CS95002李四女24CS96101王五男23MA96001赵六男23CS关系(表)属性(列、字段)元组(行、记录)域(string,{男,女})Student(sno,sname,ssex,sage,sdept)性质:列是同质的,即每一