函数依赖、规范化这类难的知识点,考的少;
基本概念、sql语句、关系代数运算、关系代数运算与sql语句的转换,考的多;
主要议题:
1.三级模式/两级映像
三级模式:外模式、模式、内模式;
模式:全局数据在数据库中特征的描述;描述全体数据的全局逻辑结构和特征;又称概念模式、逻辑模式;
内模式:数据在数据库系统内部如何存储的;又称存储模式、物理模式;
外模式:数据的局部逻辑结构和特征;是模式的子集;又称用户模式;(通过sql让其只获得一部分数据)
用户要求获取的数据发生改变,只需要改外模式/模式映像(改sql);
内模式/模式映像,当把数据库表从原来的设备放到另一个存取快的设备上(改内模式),把表拆分成2个表(改模式);
2.数据库管理系统
我们更关注圆圈中的内容;即数据控制功能;
数据库的安全性:防止不合法用户访问;
数据库的完整性:防止合法用户向数据库插入不符合数据定义要求的数据;
并发控制:多个用户同时访问数据库;
故障恢复:数据发生问题,从灾难中恢复到正常;
3.数据模型的基本概念
4.E-R模型
实体:客观存在的对象;如一个学生,学生是一个实体集;
联系:实体之间的关系;
属性:实体之间的特征;
简单属性:属性无法再分割,如性别;
复合属性:属性可以被拆的更小;如通信地址,省、市、区;考察较多;
单值属性:取值唯一;如性别;
多值属性:取值不唯一;如电话号;
派生属性:这个属性的值可以通过其他属性+系统特征计算出来;如员工工龄,可以根据入职时间计算出来;考察较多;
5.关系数据库的术语
关系:行和列组成的二维表;
属性:列;
元组;行;
分量:某行和某列相交的交点;
候选键:在关系中,唯一标识某个元组,并且不含有多余属性的属性组;
主键:一个关系中可能有多个候选键;取其中之一为约束项,这一约束项即主键;
外键:两个关系之间的引用情况;员工表中的部门号,部门号在部门表中是主键;
主属性:一个关系中除了主属性之外的属性都是非主属性;主属性是包含在任意一个候选键中的属性;员工号、身份证号是主属性,其他都是非主属性;
全码:这一个关系中,所有的属性组合在一起,形成一个属性组,才能唯一标识关系中的一个元组;要确定数据是哪一行,给出两个属性,这两个属性恰好就是关系的所有属性;如选课(学生id、课程id);
6.完整性约束
实体完整性:主属性不能为null;
用户自定义完整性:数据在设计时会基于企业的特殊要求做一些限制;比如企业要求输入员工的年龄必须>18岁;
参照完整性/引用完整性:外键(如员工表中的部门号)要么取空,要么等于部门表中主键(部门号)的值;如新员工刚来,可以取空;
7.SQL语句
考察建表语句和查询语句,其他考察较少;
不会考建表语句,考完整性约束的定义(下图主键、外键);
实下划线表示主键;虚下划线表示外键;
一个表只能有一个主键;
如果需要两个属性才能组成主键,就得使用下图第二种方式;
创建视图;
with check option可有可无;表示插入数据时是否检查select子句的约束;
通过视图向数据库插入学生记录,必须符合学生所属的系是计算机系;