文档介绍:表达学生与课程的关系,可以用如下有序对表示:
{(张三,数据库原理);(李四,离散数学)}
这样的有序对的集合称为二元关系,简称关系。
关系的数学描述
*
数据库系统概论关系的数据描述
*
关系的数学描述
在数学上,以上关系的产生可以通过如下数学运算完成:A×B,表示A中取一个元素,B中取一个元素。显然,二元关系是A×B的一个子集。数学演示乘法结果
A×B的结果表示什么含义呢?
如何使用关系描述概念模型中的实体?学号×姓名×年龄
*
数据库系统概论关系的数据描述
*
;
概念模型中的各种要素,包括实体、联系均用关系表示
一个关系就是一张二维表
现有的数据库管理系统基本上都是关系型的
SQL Server
Oracle
Informix
Access
Foxpro
第二章 关系数据库
*
数据库系统概论关系的数据描述
*
关系数据库的结构及其形式化定义
关系
域:一组具有相同数据类型的值的集合。
{1,2,3,……10}
{“a”,”b”,”C”}
{.T.,.F.}
笛卡尔积
给定一组域D1,D2,…,Dn,这些域中可以有相同的。
D1,D2,…,Dn的笛卡尔积为:
D1×D2×…×Dn =
{(d1,d2,…,dn)|diDi,i=1,2,…,n}
所有域的所有取值的一个组合
不能重复
*
数据库系统概论关系的数据描述
*
(d1,d2,…,dn)称为元组(Tuple)
di称为一个分量(Component)
若Di为有限集,其基数为| Di |=mi ,则D1×D2×…×Dn的基数M为:
*
数据库系统概论关系的数据描述
*
例:给出3个域,分别是
则D1×D2×D3={(张清梅,计算机专业,李勇),……
},其可以用二维表表示:
实际上,笛卡尔积表达了一种关系
*
数据库系统概论关系的数据描述
*
从中取出有意义的元组,即构成了关系
*
数据库系统概论关系的数据描述
*
关系
D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的
关系,表示为
R(D1,D2,…,Dn)
R:关系名
n:关系的目或度(Degree)
*
数据库系统概论关系的数据描述
*
一个关系是一张二维表,表的一行对应一个元组,一列对应一个域。给域取名,称为属性。
候选码:
若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码
简单的情况:候选码只包含一个属性;当候选码包括所有的属性,称为全码。
主码:
若干候选码,选定其中一个,称为主码
*
数据库系统概论关系的数据描述
*
主码的判别
关系模式如下:
课程(课程号,课程名,学分)
选修(学号,课程号,成绩)
个人基本信息(身份证号,驾驶证号,姓名,年龄,性别)
找出它们的候选码和主码
*
数据库系统概论关系的数据描述
*