数据模型
具体事物-抽象化-->概念模型-数据化-->数据模型
概念模型也称信息模型,在数据库设计阶段,由设计者按照用户的观点对数据和信息建模,实现对现实世界的概念抽象;
数据模型主要包括网状模型、层次模型、关系模型、面向对象数据模型,由设计者按照计算机系统的观点对数据建模,实现概念模型到适应具体数据库管理系统的数据模型的转换;数据模型通常由数据结构、数据操作和完整性约束三个要素组成
E-R模型(实体-联系模型)
是用E-R图来描述现实世界的概念数据模型(概念模型)
实体用矩形、属性用椭圆、联系用菱形
数据视图
视图是一个虚表
建立视图、删除视图、查询视图、更新视图
CREATE、DROP、SELECT、UPDATE
视图是虚表,本身不存放数据,对视图的更新都是通过对基本表的更新来进行的
优点:简单、安全、一定程度的逻辑独立性、视图可以使不同的用户以不同的方式看待同一数据
缺点:性能差、更新限制严重
关系数据结构
域:是一组具有相同数据类型的值的集合
笛卡尔积:也称为直积,可表示为一张二维表,表中的每一行对应一个元组,表中的每一列的值来自一个域
关系:
候选码:若关系中的某个属性的值能唯一标识一个元组,且又不含有多余的属性,则该属性成为该关系的候选码,简称码
主码:若关系中有多个候选码,则选取其中一个为主码
主属性:候选码的属性
非主属性:不包含在候选码中的属性
注意:不能出现两个完全相同的元组;每一个分量都是不可分的数据项
关系操作
关系操作包括 | 查询、插入、删除、修改 |
查询细分 | 选择、投影、并、差、笛卡尔积 (连接、除、交可通过前五种定义) |
关系完整性约束
实体完整性
若属性A是关系R的主属性,则A不能取空值
参照完整性
也称引用完整性,若F是基本关系R的属性,但不是R的码,且F与基本关系S的主码Ks相对应,则称F是R的外码,并称R是参照关系,S是被参照关系
若属性F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中的每个元组在F上的值必须取空值或者等于S中某个元组的主码值
用户自定义完整性
用户定义的完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用程序所涉及的数据必须满足的语义要求
关系代数
关系代数是一种抽象的查询语言,作为研究关系数据语言的数据工具,用对关系的运算来表达查询。关系代数的运算对象是关系,产生的结果也是关系
传统的集合运算
并、差、交、广义笛卡尔积
专门的关系运算
选择 | 从行的角度进行的运算 |
投影 | 从列的角度进行的运算 |
连接 | 分为等值连接和自然连接,自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性列去掉 |
除 | 从行和列的角度进行的运算 |
关系演算
元组关系演算语言ALPHA
域关系演算语言QBE