关系
若关系中的某一属性的值能唯一地标识一个元组,则称该属性组为候选码。
若一个关系有多个候选码,则选定其中一个为 主码。
候选码的诸属性称为主属性,不包含在任何候选码中的属性称为非主属性或非码属性。
在最极端的情况下,关系模式的所有属性是这个关系模式的候选码,称为全码。
关系有三种类型:基本关系、查询表、视图表。
关系操作
关系模型中常用的关系操作包括查询(Query)、插入(Insert)、删除(Delete)、修改(Update)。
查询操作又可以分为:选择(Select)、投影(Project)、连接(Join)、除(Divide)、并(Union)、差(Except)、交(Intersection)、笛卡尔积。
基本操作:选择、投影、并、差、笛卡尔积。
关系操作的特点是集合操作方式:操作的对象和结果都是集合。
关系的完整性
实体完整性 若属性A是基本关系R的主属性,则A不能取空值(null value)。
参照完整性(Referential Integrity)
主码可以用下划线标识。A关系中的某个属性的取值需要参照B关系的属性取值。
同一关系内部属性间也可能存在引用关系。
关系代数
投影:关系R上的投影是从R中选择出若干属性列组成新的关系。
连接:它从两个关系的笛卡尔积中选取属性间满足一定条件的元组。一般的有等值连接和自然连接。连接后取消重复列的是自然连接。
关系演算
元组关系演算语言ALPHA,ALPHA语言主要有GET,PUT,HOLD,UPDATE,DELETE,DROP 6条语句。操作格式为 操作语句 工作空间名(表达式):操作条件
关系数据库标准语言SQL(Structured Query Language)
SQL能实现数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)、数据控制(Data Control)。
SQL既是独立的语言又是嵌入式的语言。 SQL的核心功能用到九个动词。
SQL功能 | 动词 |
数据查询 | SELECT |
数据定义 | CREATE,DROP,ALTER |
数据操纵 | INSERT,UPDATE,DELETE |
数据控制 | GRANT,REVOKE |
支持SQL的RDBMS也支持关系数据库三级模式结构,外模式对应于视图(View)和部分基本表(Base Table),模式对应于基本表,内模式对应于存储文件(Stored File)。