数据库系统的特点:
1.数据结构化
2.数据共享型高,冗余度低
3.数据独立性(包括数据的物理独立性和逻辑独立性)
4.数据由DBMS统一管理和控制。
DBMS的功能:
1.数据的组织,存储,管理功能。
2.数据库的定义功能。
3.数据的操纵功能。
4.数据库的事务管理和运行管理。
5.数据库的建立和运行功能。
6.其他功能如不同数据库之间的互访和互操作功能。
数据模型概念:是数据库中用于对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式架构。 通常是由数据结构,数据操作,完整性操作来组成。
数据库的关键和基础是概念模型。
DBMS的三级模式:外模式,模式,内模式。其中内模式是在数据库内部(一个数据库只有一个),描述数据的物理存储;外模式/模式也称子模式(一个数据库可以有多个),用户模式,是用于保证数据的逻辑独立性。
候选码:若关系中某一属性组的值能唯一地识别一个元组,而其他子集不能,则称该属性为候选码。
主码:若关系中有多个候选码,则选择其中一个当作主码。
外码:若F是关系R 的一个或一组属性,但不是R的码,而与关系S的主码相对应,则称F是S的外码。
等值连接和自然连接的区别和联系:自然连接是特殊的等值连接,它还要要求连接的属性组是相同的,并且结果中去掉重复的属性。
连接运算的定义:连接是从两个关系的广义笛卡尔积中选取属性间满足一定条件的元组。
数据模型是由数据结构,数据操作,数据的约束条件三部分组成的。
数据模型包扩:物理模型(现实世界),概念模型(信息世界),逻辑模型(机器世界)。
关系数据模型:是由数据结构,完整性约束规则,关系运算三部分构成。
完整性约束规则包括:实体完整性,参照完整性,用户自定义完整性。
关系模型中8种查询操作,其中,选择,投影,差,并,笛卡尔积是5种基本操作,其他操作可以由五种基本操作定义或者导出。
SQL语言的特点:
1.高度统一,SQL集数据定义语言,数据操纵语言,数据控制语言于一体。
2.高度非过程化,只需要指出做什么,而不需要具体指出如何做。
3.面向集合的操作方式,
4.既是子含式语言,又是嵌入式语言。
基本表:一个表就对应一个关系。
视图:一个或者多个表对应一个视图,视图是一个虚表。视图不占用内存
视图的优点:
1.简化用户的操作。
2.可以让用户多角度看待同一数据。
3.视图对重构数据库提供一定的逻辑性。
4.视图能够对机密数据停供安全保护。
SQL语言中需要注意的
1.or的优先级高于and。
2. ANY和ALL使用的时候要加上比较符号。
3.其中用来消除重复语句的是distinct。
行列子集视图
SQL语言具有数据定义,数据操纵,数据控制,数据查询的功能。
相关子查询和不相关子查询:在嵌套查询中,如果子查询和父查询相关,则为相关子查询,如果子查询和父查询不相关则称为不相关子查询。
存储过程:是指编译后以一种可执行的状态存在数据库中的SQL语句。 (因此经常存储一些常用的语句)
触发器:是一种特殊的存储过程,其特殊性在于它不需要由用户来直接调用,而是当对一个表的特别事件出现时,自动触发执行的。
第四章
数据依赖,其中最重要的是函数依赖,函数依赖反应的是一个属性或者一组属性之间的相互依存,相互制约的关系,反应的是现实世界的约束关系。
一个“好”的关系模型,满足没有插入异常,查询异常,删除异常,数据沉余尽可能小。
完全依赖:X->Y,其中X的真子集X'不能 满足X'->Y
部份依赖: 即真子集也满足
非平凡依赖:X->Y,Y不是X的子集
平凡依赖:Y是X的子集
1NF:如果一个属性R(U)中的每一个属性都是不可再分的基本数据项。
2NF:属于1NF,且每一个非主属性都完全依赖于R的主码。