关系数据库基本原理-关系模型和关系代数课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《关系数据库基本原理-关系模型和关系代数课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 数据库 基本原理 模型 代数 课件
- 资源描述:
-
1、关系数据库基本原理关系数据库基本原理(1)关系模型与关系代数)关系模型与关系代数王传栋王传栋南京邮电大学计算机学院南京邮电大学计算机学院内容与要求内容与要求n知识知识点点q(1)知识点一:关系模型概述)知识点一:关系模型概述q(2)知识点二:关系数据结构)知识点二:关系数据结构q(3)知识点三:关系代数理论)知识点三:关系代数理论q(4)知识点四:关系数据库标准语言)知识点四:关系数据库标准语言SQLq(5)知识点五:关系数据库的规范化理论)知识点五:关系数据库的规范化理论q实验实验1 SQL语言的应用语言的应用n教学基本要求教学基本要求q了解关系数据结构的基本概念,了解关系模型的各种操作和关
2、了解关系数据结构的基本概念,了解关系模型的各种操作和关系代数的基本原理,掌握关系数据模型的完整性约束机制,系代数的基本原理,掌握关系数据模型的完整性约束机制,掌掌握握SQL语言,了解函数依赖等基本概念,掌握关系模式的规范语言,了解函数依赖等基本概念,掌握关系模式的规范化概念、方法、原理与过程。化概念、方法、原理与过程。引言引言n关系模型是当前的主流逻辑数据模型关系模型是当前的主流逻辑数据模型 q由由IBM公司的高级研究员公司的高级研究员E.F.Codd于于1970年提出年提出 n应用广泛的原因:应用广泛的原因:q单一的数据建模概念单一的数据建模概念 q坚实的数学理论基础坚实的数学理论基础 q提
3、供高级接口:数据库语言提供高级接口:数据库语言SQL关系模型的基本概念关系模型的基本概念n关系模型(关系模型(Relational Model)q用二维表格表示实体集,用关键码表示实体之间联系的数据模用二维表格表示实体集,用关键码表示实体之间联系的数据模型称为关系模型型称为关系模型q理解理解n用二维表格(用二维表格(table)表示实体集及其间联系,表示实体集及其间联系,n用关键码(或键)进行数据导航用关键码(或键)进行数据导航n关系模型是逻辑模型的一种,也具有三个要素关系模型是逻辑模型的一种,也具有三个要素q关系数据结构关系数据结构q关系操作关系操作q数据完整性约束规则数据完整性约束规则关系
4、模型的基本概念关系模型的基本概念n示例示例 SNO SNAME AGE SEX NativePlace S1 WANG 20 M 北京北京 S2 LIU 18 F 山东山东 S3 HU 17 M 上海上海 S4 XIA 19 F 四川四川 CNO CNAME Credit CreditHours CPNO TNO C1 Math 3 48 NULL T1 C2 English 4 64 NULL T2 C3 PM 2 32 C2 T2 C4 DB 3.5 56 C1 T1 SNO CNO Grade S1 C2 80 S1 C3 70 S1 C4 85 S2 C1 60 S2 C2 75 S2
5、 C3 90 S2 C4 NULL S3 C1 85 S3 C4 80 S4 C2 85 S4 C4 75 TNO TNAME TITLE SEX T1 ZHAO 讲师讲师 M T2 LIU 教授教授 F SC(SNO,CNO,Grade)字段含义:学号,课程号,成绩字段含义:学号,课程号,成绩 S(SNO,SNAME,AGE,SEX,NativePlace)字段含义:学号,姓名,年龄,性别,籍贯字段含义:学号,姓名,年龄,性别,籍贯 T(TNO,TNAME,TITLE,SEX)字段含义:教师号,教师姓名,职称,性别字段含义:教师号,教师姓名,职称,性别 C(CNO,CNAME,Credit,
6、CreditHours,CPNO,TNO)字段含义:课程号,课程名,学分,学时数,先修课号,授课教师号字段含义:课程号,课程名,学分,学时数,先修课号,授课教师号 关系模型的基本概念关系模型的基本概念n关系数据结构:二维表关系数据结构:二维表q字段称为属性,也称为列(字段称为属性,也称为列(column)n反映事物的一个特征,每个字段都有字段名和字段值反映事物的一个特征,每个字段都有字段名和字段值n属性的取值范围属性的取值范围(所有可取值的集合所有可取值的集合)称为属性域称为属性域Domain n大写字母大写字母A、B、C、表示单个属性;大写字母表示单个属性;大写字母、X、Y、Z 表示属性集表
7、示属性集n小写字母小写字母a、b、c、表示属性值表示属性值q记录称为元组(记录称为元组(tuple),),也称为行(也称为行(row)n记录类型称为关系模式,由模式名和属性列表组成记录类型称为关系模式,由模式名和属性列表组成n元组集合称为关系(元组集合称为关系(relation)或实例(或实例(instance),),也称也称为表格为表格关系模型的基本概念关系模型的基本概念n关系数据结构:二维表关系数据结构:二维表q元组用关键字(元组用关键字(Key word简称键)来标识简称键)来标识q属性个数称为元数(属性个数称为元数(Arity),),也称为目也称为目q元组个数为基数(元组个数为基数(C
8、ardinality)R R A A B B C C D D E E a a1 1 b b1 1 c c1 1 d d1 1 e e1 1 a a2 2 b b2 2 c c2 2 d d2 2 e e2 2 a a3 3 b b3 3 c c3 3 d d3 3 e e3 3 a a4 4 b b4 4 c c4 4 d d4 4 e e4 4 一般术语一般术语关系模型术语关系模型术语字段、数据项字段、数据项属性属性记录类型记录类型关系模式关系模式记录记录1 1元组元组1 1记录记录2 2元组元组2 2记录记录3 3元组元组3 3记录记录4 4元组元组4 4字段值字段值属性值属性值文文件件关
9、关系系R(A,B,C,D,E)关系模型的基本概念关系模型的基本概念n关键码(关键码(key,简称键)简称键)q由一个或多个属性组成。在实际使用中,有下列几种键由一个或多个属性组成。在实际使用中,有下列几种键q1)超键()超键(Super Key)n其值能唯一地决定其它所有属性的值的属性集其值能唯一地决定其它所有属性的值的属性集q2)候选键(候选键(Candidate Key)n不含多余属性的超键不含多余属性的超键n其值能唯一地决定关系中其它所有属性的值、而它的任何真其值能唯一地决定关系中其它所有属性的值、而它的任何真子集无此性质的属性或属性组子集无此性质的属性或属性组 q3)主键(主键(Pri
10、mary Key)n用户选作元组标识的候选键,称为主键(用户选作元组标识的候选键,称为主键(PK),),简称键简称键关系模型的基本概念关系模型的基本概念n关键码(关键码(key,简称键)简称键)q4)候补键()候补键(Alternate Key)n主键之外的候选键主键之外的候选键q5)全键)全键:由关系的所有属性构成的主键由关系的所有属性构成的主键 q6)外键()外键(Foreign Key,FK)n如果模式如果模式R中的属性中的属性K是其它模式的主键,那么是其它模式的主键,那么K在模式在模式R中中称为外键称为外键n不是本关系的键,却引用了其它关系或本关系的键的属性或不是本关系的键,却引用了其
11、它关系或本关系的键的属性或属性组属性组q7)主属性与非主属性)主属性与非主属性nSUPPLY(供应商,零件名,工程名供应商,零件名,工程名)项目项目供应供应mp零件零件供应商供应商2.1 关系模型的基本概念关系模型的基本概念n示例示例q关系模式关系模式STUDENT(学号,姓名,性别,出生日期,籍贯)学号,姓名,性别,出生日期,籍贯)q假设:不允许学生重名,问:假设:不允许学生重名,问:n(学号,姓名,性别,出生日期,籍贯)?(学号,姓名,性别,出生日期,籍贯)?n(学号,性别)?(学号,性别)?n(学号,姓名)?(学号,姓名)?n(学号)?(学号)?n(姓名)?(姓名)?n哪些是主属性?哪些
12、是主属性?关系模型的基本概念关系模型的基本概念n关系的定义和性质关系的定义和性质q关系是一个属性数目相同的元组的集合关系是一个属性数目相同的元组的集合n有限关系有限关系q在关系模型中,关系的规范性限制:在关系模型中,关系的规范性限制:n1)关系中每一个属性值都是不可分解的(原子的)关系中每一个属性值都是不可分解的(原子的)n2)关系中不允许出现重复元组(即不允许出现相同的元组)关系中不允许出现重复元组(即不允许出现相同的元组)n3)由于关系是一个集合,因此不考虑元组间的顺序,即没)由于关系是一个集合,因此不考虑元组间的顺序,即没有行序有行序q注:关系中元组的排列是有序的,取决于索引注:关系中元
13、组的排列是有序的,取决于索引n4)元组中的属性在理论上也是无序的,但使用时按习惯考)元组中的属性在理论上也是无序的,但使用时按习惯考虑列的顺序虑列的顺序关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q实体完整性规则(实体完整性规则(entity integrity rule)n关系内的约束关系内的约束n每个关系都应有一个主键每个关系都应有一个主键n每个元组的主键的值应当唯一;组成主键的属性,不能有空每个元组的主键的值应当唯一;组成主键的属性,不能有空值(值(NULL)q否则,主键值就起不了惟一标识元组的作用否则,主键值就起不了惟一标识元组的作用关系模型的基本概念
14、关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q实体完整性规则(实体完整性规则(entity integrity rule)n例如例如 S(SNO,SNAME,AGE,SEX,NativePlace)字段含义:学号,姓名,年龄,性别,籍贯字段含义:学号,姓名,年龄,性别,籍贯 Create Table S(SNO CHAR(3),SNAME CHAR(8),AGE Integer,SEX CHAR(1),NativePlace VARCHAR(20),Primary Key(SNO),Check(SEX IN(M,F);SNO SNAME AGE SEX NativePlace
15、S1 WANG 20 M 北京北京 S2 LIU 18 F 山东山东 S2 HU 17 M 上海上海 NULL XIA 19 F 四川四川 关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q参照完整性规则(参照完整性规则(reference integrity rule)n不同关系或同一关系的不同元组间的约束不同关系或同一关系的不同元组间的约束n参照完整性规则的形式定义参照完整性规则的形式定义q如果属性集如果属性集K是关系模式是关系模式R1的主键,的主键,K也是关系模式也是关系模式R2的的外键,那么在外键,那么在R2的关系中,的关系中,K的取值只允许两种可能,或的
16、取值只允许两种可能,或者为空值,或者等于者为空值,或者等于R1关系中某个主键值关系中某个主键值n规则的实质:规则的实质:不允许引用不存在的实体不允许引用不存在的实体n在上述形式定义中在上述形式定义中q关系模式关系模式R1的关系称为的关系称为“参照关系参照关系”,也称,也称“主表主表”、“父表父表”q关系模式关系模式R2的关系称为的关系称为“依赖关系依赖关系”,也称,也称“副表副表”、“子表子表”关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q参照完整性规则(参照完整性规则(reference integrity rule)n规则在具体使用时,有三点变通:规则在具
17、体使用时,有三点变通:n外键和相应主键可以不同名,只要定义在相同值域上即可外键和相应主键可以不同名,只要定义在相同值域上即可nR1和和R2可以是不同关系模式,也可以是同一个关系模式可以是不同关系模式,也可以是同一个关系模式q同一个关系模式中,表示了同一个关系中不同元组之间的同一个关系模式中,表示了同一个关系中不同元组之间的联系联系n外键值是否允许空,应视具体问题而定外键值是否允许空,应视具体问题而定q当外键属性是主键的组成成分时,不允许为空当外键属性是主键的组成成分时,不允许为空关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q参照完整性规则(参照完整性规则(re
18、ference integrity rule)n示例示例 SNO SNAME AGE SEX NativePlace S1 WANG 20 M 北京北京 S2 LIU 18 F 山东山东 S3 HU 17 M 上海上海 S4 XIA 19 F 四川四川 CNO CNAME Credit CreditHours CPNO TNO C1 Math 3 48 NULL T1 C2 English 4 64 C5 T2 C3 PM 2 32 C2 T4 C4 DB 3.5 56 C1 NULL SNO CNO Grade S1 C2 80 S1 C3 70 S1 C5 85 S2 C1 60 S2 C
19、2 75 S2 NULL 90 S2 C4 NULL S3 C1 85 S3 C4 80 S4 C2 85 S6 C4 75 TNO TNAME TITLE SEX T1 ZHAO 讲师讲师 M T2 LIU 教授教授 F 关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q用户定义的完整性规则用户定义的完整性规则n和数据的具体内容有关的约束和数据的具体内容有关的约束n构建关系模式时,属性的数据类型,可能满足不了需求,需构建关系模式时,属性的数据类型,可能满足不了需求,需要要显式定义显式定义额外的约束规则说明额外的约束规则说明qCHECK()子句、触发器、断言、过程
20、子句、触发器、断言、过程n说明说明q各种各种DBMS产品对完整性约束的支持程度不同产品对完整性约束的支持程度不同q 数据库中完整性约束检查,由数据库中完整性约束检查,由DBMS实现对实现对DB进行更新进行更新(I/D/U)操作时检查,保证数据与现实世界的一致性操作时检查,保证数据与现实世界的一致性关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q用户定义的完整性规则用户定义的完整性规则n示例示例1 S(SNO,SNAME,AGE,SEX,NativePlace)字段含义:学号,姓名,年龄,性别,籍贯字段含义:学号,姓名,年龄,性别,籍贯 Create Table
21、S(SNO CHAR(3),SNAME CHAR(8),AGE Integer,SEX CHAR(1),NativePlace VARCHAR(20),Primary Key(SNO),Check(SEX IN(M,F);SNO SNAME AGE SEX NativePlace S1 WANG 20 M 北京北京 S2 LIU 18 F 山东山东 S3 HU 17 M 上海上海 S4 XIA 19 K 四川四川 关系模型的基本概念关系模型的基本概念n关系模型的完整性规则关系模型的完整性规则q用户定义的完整性规则用户定义的完整性规则n示例示例2 SC(SNO,CNO,Grade)字段含义:学号
22、,课程号,成绩字段含义:学号,课程号,成绩 Create Table SC(SNO CHAR(3),CNO CHAR(3),GRADE DEC(5,2),Primary Key(SNO,CNO),Foreign Key(SNO)References S(SNO),Foreign Key(CNO)References C(CNO),Check(GRADE is NULL Or GRADE Between 0 And 100);SNO CNO Grade S1 C2 80 S1 C3 70 S1 C5 85 S2 C1 60 S2 C2 75 S2 NULL 90 S2 C4 NULL S3 C1
23、-5 S3 C4 80 S4 C2 101 S6 C4 75 关系模型的基本概念关系模型的基本概念n关系模型的三层体系结构关系模型的三层体系结构关系模型也遵循数据库的三级体系结构关系模型也遵循数据库的三级体系结构q关系模式关系模式n记录类型称为关系模式记录类型称为关系模式n关系模式的集合就是数据库的概念模式,是问题域数据的全关系模式的集合就是数据库的概念模式,是问题域数据的全局逻辑视图局逻辑视图n是对数据的特征描述,不涉及物理存储方面的描述是对数据的特征描述,不涉及物理存储方面的描述n由数据定义语言(由数据定义语言(DDL)实现实现q定义模式名、属性名、值域、模式主键定义模式名、属性名、值域、
24、模式主键q定义时,模式名和属性名一般都用英文单词表示定义时,模式名和属性名一般都用英文单词表示 SC(SNO,CNO,Grade)S(SNO,SNAME,AGE,SEX,NativePlace)T(TNO,TNAME,TITLE,SEX)C(CNO,CNAME,Credit,CreditHours,CPNO,TNO)关系模型的基本概念关系模型的基本概念n关系模型的三层体系结构关系模型的三层体系结构关系模型也遵循数据库的三级体系结构关系模型也遵循数据库的三级体系结构q关系模式关系模式 用户用户(应用程序应用程序)用户记录用户记录模式模式/内模式映像内模式映像外模式外模式模式模式内模式内模式DB模
25、式模式/外模式映像外模式映像关系模型的基本概念关系模型的基本概念n关系模型的三层体系结构关系模型的三层体系结构关系模型也遵循数据库的三级体系结构关系模型也遵循数据库的三级体系结构q子模式子模式n是用户所用到的局部数据的描述是用户所用到的局部数据的描述n构建子模式时,需要指出数据与关系模式中相应数据的联系构建子模式时,需要指出数据与关系模式中相应数据的联系n由数据定义语言(由数据定义语言(DDL)实现实现q定义时需要考虑用户对数据的操作权限定义时需要考虑用户对数据的操作权限q对子模式的操作(如插入、修改、删除)是受限的对子模式的操作(如插入、修改、删除)是受限的关系模型的基本概念关系模型的基本概
展开阅读全文