120 likes | 313 Views
关系数据库和 SQL 语言. 教学内容: 1 .关系数据库基本理论 2 . SQL 语言 教学要求: 1 .掌握关系的定义、关系模式及关系的完整性 2 .理解并能运用基本关系代数、 SQL 语言进行关系数据库操作 教学重点: 关系完整性、 SQL 语言 教学人员 : 03 级本 2 班 花云 教学过程: 1 .上讲回顾 2 .讲授新知. 第二章 关系数据库. 第一节 关系的定义 第二节 关系模式和关系的完整性 第三节 关系代数 第四节 SQL 语言简介. 1 、域 (Domain): 同类型的值的集合。当域是有限集时, 域中值的个数称为域的基数
E N D
关系数据库和SQL语言 教学内容: 1.关系数据库基本理论 2.SQL语言 教学要求: 1.掌握关系的定义、关系模式及关系的完整性 2.理解并能运用基本关系代数、SQL语言进行关系数据库操作 教学重点:关系完整性、SQL语言 教学人员:03级本2班 花云 教学过程:1.上讲回顾 2.讲授新知
第二章 关系数据库 • 第一节 关系的定义 • 第二节 关系模式和关系的完整性 • 第三节 关系代数 • 第四节SQL 语言简介
1、域(Domain): 同类型的值的集合。当域是有限集时,域中值的个数称为域的基数 2、笛卡儿积(Cartesian Product): 给定一组域D1, D2, ..., Dn, 定义这组域的笛卡儿积为:D1×D2×…×Dn={ (d1,d2,..., dn) | di∈Di, i=1,2,...,n } 其中:( d1, d2, ..., dn ) 称为一个n元组 域的集合中,允许出现完全相同的域。 笛卡儿积的基数=m1×m2×...×mn, mi是Di的基数
3、关系:笛卡儿积D1×D2×…×Dn的任一个子集称为定义在域D1, D2, …, Dn上的一个关系,记为:R (D1, D2, …, Dn) 关系也是一个二维表。一般我们从笛卡儿积中选取满足实际意义的元组来构成关系。
4、关系的性质: 列同质,每列的值来自同一个域; 不同的列可以出自相同的域,用不同的列名标识; 列的次序可以任意; 行的次序可以任意; 同一个关系中不允许有完全相同的元组存在; 关系中每个分量必须是不可再分的数据项,不允许组合属性或多值属性。
第二节 关系模式和关系的完整性 2.1 关系模式 1. 关系模式,对关系的描述称为关系模式, 完整性用以保证数据的正确与一致。 关系模式的形式定义为:R(U, D, DOM, F),其中: R----关系名 U----组成R的属性名的集合 D----域的集合 DOM----属性到域的映象的集合 F----属性之间数据依赖的集合
2.2 关系的完整性 完整性约束条件的目的是为了保证数据的正确性,相容性和有效性。完整性规则有以下三个方面: 1.实体完整性:关系R的主属性不能为空值 元组是表示实体的、是可标识的。主码是元组的标识。一个元组的主码或主码的某个分量若为空将意味着这个元组所代表的实体是不确定的或不可标识的或不完整的,这是不允许。实体完整性是用来约束元组应能正确地反映客观现实 参照完整性 设A是关系R中的属性或属性组,在关系R中A是外部码,在关系S中A是主码;则对关系R中每个元组,A或者为空值,或者等于S中某个元组的主码值。
第三节 关系代数 • 3.1 传统的集合运算 • 1.集合运算符:并集∪, 交集∩, 差集- • R∪S:由属于R或属于S的元组组成,结果仍是n元关系。 • R∩S:由属于R且属于S的元组组成,结果仍是n元关系。 • R-S:由属于R且不属于S的元组组成,结果仍是n元关系。 • 注意:在对两个关系R,S做并、交、差运算时,要求R和S是相容的: • (1)列数相等;(2)对应的列取自同一个域。 • 2.广义笛卡儿积:×,R×S=( trts | tr∈R ∧ ts∈S )
3.2 专门的关系运算 • 1.选择(Selection)运算σ:σF(R)={ t | t∈R∧F(t)=True },在关系R中挑选满足条件F的元组构成的新关系。 • 2.投影(Projection):∏(R)={ t [A] | t∈R} } • .连接(Join):其中:θ是比较运算符,可以是: > 大于连接学 ≥大于等于连接 < 小于连接 ≤小于等于连接 =等值连接 4.自然连接
3.3 关系运算举例 • 有关系模式:学生关系模式:S( S#, SName, Sex, Dept ) • 课程关系模式:C( C#, CName, Dept ) • 学生选课关系模式:SC( S#, C#, G ) • 并集:R,S。
投影运算: • 自然连接:
本讲小结: 阐述关系的定义、对关系模式和关系的完整性等相关概念,介绍关系代数的基本运算:并、交、叉、迪卡积、投影、连接 布置作业:P180.1,2