一、概念
1.数据库系统(DBS)是指在计算机系统中引入数据库后的系统构成。主要由数据库、数据库用户、计算机硬件系统、计算机软件系统等几个部分组成。其中,软件系统包括了数据库管理系统(DBMS,是数据库系统的核心软件)。
2.数据库的三级模式:外模式、模式、内模式。在数据库系统中,外模式可以有多个,而模式、内模式只能有一个。内模式是整个数据库实际存储的表示,模式是整个数据库实际存储的抽象表示,外模式是模式的某一部分的抽象表示。
3.四种数据模型:非关系模型(层次模型、网状模型)、关系模型、面向对象模型。
4.数据的独立性:数据库中的数据与应用程序之间相互独立。
5.主键:是表中的一个或多个字段,它的值用于唯一标识表中的某条记录,主键唯一不可空。主键主要是用于其他表的外键关联,以及本记录的修改与删除。外键:如果关系模式R中的某属性集不是R的主键,而是另一个关系R1的主键则该属性集是关系模式R的外键。
6.函数依赖:函数依赖是由数学派生的术语,它表征一个属性或属性集合的值对另一个属性或属性集合的值的依赖性。简单点说就是:某个属性集决定另一个属性集时,称另一属性集依赖于该属性集。类似于变量之间的单值函数关系。
7.第一范式:关系中每个属性都是不可再分的简单项。第二范式:如果关系模式R为第一范式,且每个非主属性都 完全函数依赖(X—>Y且X的真子集X'-\->Y)于R的主键,则R为第二范式。第三范式:如果关系模式R为第二范式,且每个非主属性都不传递函数依赖(X—>Y但Y-\->X,而Y—>Z,则Z对X传递函数依赖)于R的主键,则R为第三范式。
8.事务:是数据库系统中执行的一个工作单位,它是由用户定义的一组操作序列。一个事务可以是一组SQL语句、一条SQL语句、整个程序,一个应用程序可以包含多个事务。事务的特征:原子性(一个事务是一个不可分割的工作单位,执行时遵循“要么不做,要么全做”原则)、一致性、隔离性、持久性。
9.锁:锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。
10..实现并发控制的方法:*技术、时标技术。
11.数据库恢复的基本原理:利用数据的冗余。即,两种方法,生成冗余数据和冗余重建。
12.数据库设计步骤:系统需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行与维护阶段。
13.触发器:触发器是一中特殊的存储过程,主要是通过事件进行触发而被执行的。而存储过程可以通过存储过程名字而被直接调用。触发器有四要素:名称、定义的目标、触发条件、触发逻辑。触发器作用:主要是实现由主键和外键所不能保证的复杂的参照完整性和数据一致性;另外,它可以强化约束,可以联级运算。
14.存储过程:存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。调用方法: 1)可以用一个命令对象来调用存储过程。 2)可以供外部程序调用,比如:java程序。
15.索引:索引就一种特殊的查询表,实际上是 记录的关键字与其相应地址的对应表。作用:加快查询速度、保证行的唯一性。缺点:它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。
16.视图:视图是虚表,其内容由查询定义,其数据不进行存储,而是来自基本表,只在数据库中存储其定义。对视图的修改会影响基本表。 视图是存储在数据库中的查询的SQL 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据,另一原因是可使复杂的查询易于理解和使用。
17.表和视图的关系:视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据。 表就是关系数据库中实际存储数据用的。
二、SQL
1.常用数据类型:
int 4byte = 32bit :一个汉字2字节,中文标点、全角占两字节;字母、英文标点、半角占一个字节
char:固定长度的非unicode 字符数据,最大长度为8000个字符
varchar :可变长度的非unicode 字符数据,最大长度为8000个字符,存储大小为输入数据的实际长度
nchar :固定长度的unicode 字符数据,最大长度为4000个字符,存储大小为实际长度的两倍
nvarchar : 可变长度的unicode 字符数据,最大长度为4000个字符,存储大小为实际长度的两倍
2.常用SQL语句
详见博客常用SQL语句。
SQL练习题。
三、关系代数
1.传统集合运算:并、交、差、广义笛卡儿积。
2.关系运算:选取σ(B>'4')(R); 投影πC,A(R);
3.连接 ∞
4.除法运算