关系数据模型由关系数据结构,关系操作集合,关系完整性约束三部分组成
关系操作:集合的操作方式
数据库的完整性是指数据的正确性和相容性,利用完整性约束。DBMS可以帮助用户阻止非法数据的输入
规则:若属性A是基本关系R的主属性,则属性A不能取空值。
一个关系通常是对现实世界的某一实体的描述,关系对应现实世界中的实体集,元组对应实体,实体是相互可区分的,通过主码来唯一标识,若主码为空,则出现不可标识的实体,这是不容许的。
(例如:学生信息(学号,姓名,年龄,性别)中的学号是主键,所以学号这个属性不能为空值)
规则:外键或者取空值(要求外键的每个属性均为空值),或者等于被参照关系中的主键的某个值。
-----------参照关系就是定义外键与主键之间的引用规则。--------
(例如:学生(学号,姓名,出生日期,专业号),专业(专业号,专业名称)学生关系中参照了专业关系中的主键”专业号“)
【注】:不仅两个或两个以上的关系间可以存在引用关系,同一关系内部属性间也可能存在引用关系,外码与所参照的属性必须定义在同一个(或一组)域上。(例如:学生(学号,姓名,出生日期,班长学号),这里的班长也是一名学生,它参照了学生关系中的“学号”属性)。
针对某个具体数据库的约束条件,由应用环境决定,它反映某一具体应用所涉及的数据必须满足的语义要求,即给出某些属性的取值范围等约束条件。
数据完整性的作用就是要保证数据库中的数据是正确的,提高了数据库的正确度.一般在插入(insert),删除(delete),更新(update)语句执行后开始检查约束.
关系代数是一种抽象的查询语言,用对关系的运算来表达查询,作为研究关系数据语言的数学工具。
运算三要素:运算对象,运算符,运算结果。
传统的集合运算是二目运算,包括并、交、差、广义笛卡尔积四种运算。
笛卡尔积:一是两个关系的元组集合所组成的新关系。
(例如:R×S的目数为R与S的目数之和,R×S的元组个数为R和S的元组个数的乘积。)
从R×S的笛卡儿积中,选取属性满足某一条件的元组。
等值连接:从R×S的笛卡儿积中。选出R,S中属性组相等的那些元组。
自然连接:特殊的等值连接,要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中删除重复的属性列。
关系R(X,Y)和S(Y , Z) ,其中X,Y,Z为属性组。R中的Y与S中的Y必须出自同一域。则R÷S得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:元组在X上的分量值x的象集Yx,包含S在Y上的投影的集合。
如有错误,遗漏和不合理的地方,欢迎大佬指正()