数据库笔记 第2章 关系数据库

目录

2.1关系数据结构及形式化定义

2.1.1关系

2.1.2关系模式R(U,D,DOM,F)

2.1.3关系数据库

2.1.4关系模型的存储结构—再说

2.2关系操作

2.2.1基本的关系操作

2.2.2关系数据语言的分类

2.3关系的完整性

2.3.1实体完整性

2.3.2参照完整性

2.3.3用户定义的完整性

2.4关系代数

2.4.1传统的集合运算

2.4.2专门的关系运算


        关系数据库系统是支持关系模型的数据库系统。本章将从数据模型的三个组成部分展开,2.4则介绍了关系代数,这是关系数据库系统中实现关系操作的一种语言,2.5介绍关系验算。

2.1关系数据结构及形式化定义

2.1.1关系

关系模型的数据结构很简单,只包含单一的数据结构--关系。

关系模型是建立在集合代数的基础上的,这里从集合论角度给出关系数据结构的形式化定义。

1、域domain--一组具有相同数据类型的值的集合。

2、笛卡儿积--域上的一种集合运算。(直接看例子再看定义)

给定一组域D1,D2,…,Dn,允许其中某些域是相同的。

D1,D2,…,Dn的笛卡儿积为:D1×D2×…×Dn ={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}。‘

笛卡尔积中每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组。

笛卡尔积元素(d1,d2,…,dn)中的每一个值di 叫作一个分量(component)。

一个域的不同取值个数称为这个域的基数(cardinal number)。若Di(i=1,2,…,n)为有限集,其基数为mi(i=1,2,…,n),则D1×D2×…×Dn的基数M为:

 

笛卡尔积可表示为一张二维表

表中的每行对应一个元组,表中的每列对应一个域。

Eg:给出3个域:

D1=导师集合SUPERVISOR={张清玫,刘逸}

D2=专业集合SPECIALITY={计算机专业,信息专业}

D3=研究生集合POSTGRADUATE={李勇,刘晨,王敏}

则D1,D2,D3的笛卡尔积为

D1×D2×D3={

(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),

(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),

(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),

(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),

(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),

(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }

其中,(张清玫,计算机专业,李勇)、(张清玫,计算机专业,刘晨) 等都是元组n-tuple。

张清玫、计算机专业、李勇、刘晨等都是分量component。

基数cardinal number为2×2×3=12,也就是说,D1×D2×D3一共有2x2x3=12个元组。这12个元组可以列成一张二维表:

 

3、关系relation

1)基本概念

D1,D2,…,Dn的笛卡尔积的某个子集才有实际含义,称之为在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn)。其中,R是关系的名称n是目或度degree

(注意:关系是笛卡尔积的有限子集。无限关系在数据库系统中是无意义的。)

当n=1时,称该关系为单元关系(Unary relation)或一元关系;

当n=2时,称该关系为二元关系(Binary relation)。

因为关系是笛卡尔积的有限子集,所以关系也可以表示为一张二维表。

元组tuple--关系中的每个元素是关系中的元组,通常用t表示。

属性attribute—每一列。

候选码candidate key—所有可以唯一标识每一个tuple的属性,这些属性叫prime attribute,其他叫no-key attribute或no-prime attribute。当所有属性都是prime attribute时,称为all-key。

主码primary key—指定的一个候选码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值