第1-1章-关系数据库基本原理.ppt
关系数据库根本原理;目录;一关系数据库概述;1.关系型数据库与表;学生信息表;;主键:一个表的主键由一个或多个字段组成,其值具有惟一性,而且不允许取空值〔NULL〕,主键的作用是惟一地标识表中的每一条记录。
要求:为了惟一标识实体的每个实例,每个数据库表都应当有一个主键,而且只能有一个主键。
提示:有时可以考虑使用两个或两个以上字段的组合作为主键。;主键;主键;外键:一个关系型数据库可能包含多个表,可以通过外键〔FOREIGNKEY〕使这些表之间关联起来。如果在表A中有一个字段对应于表B中的主键,那么该字段称为表A的外键。;图1-2主键与外键的关系;3.约束;〔1〕PRIMARYKEY约束
作用:保证表中每条记录的惟一性。可用一个字段或多个字段〔最多16个〕的组合作为表的主键。用单个字段作主键,使用字段级约束;用字段组合作主键,使用表级约束。
要求:每个表只能有一个主键,且主键字段的内容不能重复和空值。;〔2〕FOREIGNKEY约束
作用:保证FOREIGNKEY字段与其他表中的主键字段或具有惟一性的字段相对应,其值必须在所引用的表中存在,且与所引用的表在同一数据库中。假设在外键字段中输入一个非NULL值,但该值在所引用的表中并不存在,那么该记录也会被拒绝。
要求:外键字段本身的值不要求是惟一的。;〔3〕NULL与NOTNULL约束
定义:假设一个字段中允许不输入数据,那么可以将该字段定义为NULL约束,假设在一个字段中必须输入数据,那么应当将该字段定义为NOTNULL约束。
NULL含义:既不等价于数值型数据中的0,也不等价于字符型数据中的空字符串。表示用户还没有为该字段输入值。;〔4〕UNIQUE约束
定义:如果一个字段值不允许重复,那么应当对该字段添加UNIQUE约束。
区别:与主键约束不同的是,在UNIQUE字段中允许出现NULL值,但为保持惟一性,最多只能出现一次NULL值。;〔5〕CHECK约束
定义:CHECK约束用于检查一个字段或整个表的输入值是否满足指定的检查条件。在表中插入或修改记录时,如果不符合这个检查条件,那么这条记录将被拒绝。;〔6〕DEFAULT约束
作用:用于指定一个字段的默认值,当尚未在该字段中输入??据时,该字段中将自动填入这个默认值。假设对一个字段添加了NOTNULL约束,但又没有设置DEFAULT约束,就必须在该字段中输入一个非NULL值,否那么将会出现错误。;5数据完整性;;;6表的关联;〔a〕学生表一;;二关系的标准化分析;关系:3个范式有上下等级之分,3NF最高,2NF次之,1NF最低。在1NF的根底上又满足某些特性才能到达第二范式的要求,在2NF的根底上再满足一些要求才能到达第三范式的要求。
作用:用于关系数据库设计,能够简化设计过程,到达减少数据冗余、提高查询效率的目的。;1.第一范式;如何将非1NF变为1NF?——细分;图1-8符合1NF的数据库表;2.第二范式;例如:符合1NF,但不符合2NF;学生信息表student_Info;图1-11课程信息表course_Info;3.第三范式;在一个数据库表中,假设有一个非主键字段依赖于另一个非主键字段,那么该字段必然传递依赖于主键,因而该数据库表就不属于第三范式。
第三范式的实际含义:要求非主键字段之间不应该有附属关系。;例如:符合2NF,但不符合3NF;学生信息表student_Info;三关系型数据库的设计;E-R模型〔Entity-Relationship〕即实体—联系模型,是1976年P.P.S.Chen提出的。这种模型用E-R图来表示实体及其联系,广泛用于数据库设计中。;;〔2〕属性:表示实体或联系的某种特征。一个属性对应于数据库表中的一列,也称为一个字段。在E-R图中,属性用椭圆表示。
〔3〕联系:即实体之间存在的联系。在E-R图中,联系用菱形框表示。联系的类型可以是1-1、1-n、n-m等。;〔1〕先确定实体集与联系集,把参加联系
的实体集连接起来。
〔2〕画出诸实体的属性和联系的属性。
说明:当实体集与联系较多时,为了E-R图的整洁和可读性,有时可以略去属性。;E-R图例如;E-R图例如;E-R图例如;E-R图综合例如;2数据库设计过程;1.需求分析;2.概念设计;3.实现设计〔逻辑设计〕;E-R图向关系数据模型的转换;一对一联系〔1:1〕;一对多联系〔1:n〕;*;*;*;多对多联系〔m:n〕;数据模型的优化;4.物理设计