关系模型和关系代数
来源:互联网 发布:udp端口号是多少 编辑:程序博客网 时间:2024/05/10 20:57
关系模型的3类完整性规则
为了维护数据库中数据和现实中的一致性,关系型数据库的数据与更新要遵循的规则
实体完整性规则
主键的属性不能为空值参照完整性规则
如果k是R1的主键,k也是R2的外键,那么在R2中k的值可能是空值或者R1中某个主键。
外键是否可以为空根据具体问题而定用户自定义完整性规则
如:定义一个学生的年龄范围DDL:数据定义语言,主要是定义SQL模式、基本表、视图、索引(create、drop、alter)
DML:数据操纵语言,分为查询语句(select)和更新语句(insert、update、delete)
DCL:数据控制语言,主要是对基本表和视图的授权、事务控制、完整性规则关系代数
(1) 传统的集合操作:并、差、交、笛卡儿积(乘)、迪卡儿积逆运算(除)
(2) 扩充的关系操作:对关系进行垂直分割(投影)、水平分割(选择)、关系的结合(连接、自然连接)关系代数的5个基本操作
1、并
关系R和S具有相同的关系模式,RUS是属于R或属于S的元组构成的集合2、差
R-S是属于R的元组但不属于S的元组3、迪卡儿积
R*S如果R有m个元组,S有n个元组,那么R*S有m*n个元组4、投影
相当于对关系进行垂直分割,消去一些列重新安排顺序
π4,1(R)代表关系的第1列为关系R的第4列,第2列为R的第1列5、选择
对关系做水平切割,选取符合条件的元组
关系代数的4个组合操作
1、交
R∩S是基于R有属于S的元组,R∩S=R-(R-S)2、连接
连接是迪卡儿积和选择操作组合而成3、自然连接
一般自然连接使用在R和S有公共属性的情况中,如果两个关系没有公共属性,那么自然连接转化为迪卡儿积
4、除法
比较复杂,看图解释
- 关系模型和关系代数
- 关系代数 (关系模型)
- 关系模型之关系代数
- 关系模型之关系代数
- 关系模型、关系代数、关系演算
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 关系代数
- 【数据库关系模型之关系代数】θ连接,等值连接和自然连接之间的差异
- 【数据库关系模型之关系代数】关系代数的基本操作
- 关系模型和关系运算
- OpenLayers+Geoserver 简单入坑
- codeforces 722C. Destroying Array map+multiset
- 1004 Acute Stroke
- Java构造器的深入理解
- 文件与file与os
- 关系模型和关系代数
- 前端常用的优化方法
- 向yml文件传递参数,ansible-playbook命令
- ioctrl 详解
- angular的表格排序、分页和一些基本操作
- html5布局中padding的使用理解
- 区间DP-NYOJ737石子合并
- POJ2955 Brackets 【区间dp】
- java 生成xml