关系与关系模式
关系:二维表
关系模式:对关系的描述
R(A1, A2, ... ,An)
例:Student( Sno,Sname,Sdep, ... )
数据库设计
过程:信息收集、确定数据、建立E-R模型、规范化、写SQL建库
实体 - 关系模型(E-R模型)
实体、属性、联系的概念
联系的分类:一对一(1:1),一对多(1:N),多对多(M:N)
将E -R模型转化为关系模式
实体 → 表
属性 → 列
联系 →
联系的属性 —— 新建联系表,将属性添加到其中
1:1、1:N —— A表的主键添加到B表作为外键
M:N —— A、B表的主键添加到联系表中作为外键
规范化理论
函数依赖
定义:表R(U),X,Y是U的子集,表中存在两行记录,若X的值相同,则Y的值也相同。称作X函数决定Y / Y函数依赖X(X→Y)
①非平凡/②平凡函数依赖:X→Y,①Y不包含于X / ②Y包含于X
X←→Y:X→Y,Y→X
X不依赖于Y:X—\→Y
完全依赖X—F→Y:X→Y,任意X的子集X'—\→Y
部分依赖X—F→Y:X→Y,存在X的子集X'→Y
传递依赖:X→Y,Y→Z,Y—\→X,Z∉Y。称Y→Z传递依赖
数据库设计中可能出现的问题:插入异常、删除异常、更新异常、数据冗余。故要进行模式分解
范式理论
第一范式(1NF) —— 每个属性都不可再分,所有的关系都满足1NF
第二范式(2NF) —— ① 所有表满足1NF ② 非主属性完全依赖于任一候选键
第三范式(3NF) —— ① 所有表满足2NF ② 非主属性不传递依赖任一候选键
BCNF范式 —— 每一个X → Y,都有X含有键
应用系统结构
集中式数据库:数据集中存放在一台计算机上
分布式数据库:数据存放在计算机网络连接的不同计算机上
组成
局部数据库管理系统
全局数据库管理系统
通信管理
全局数据字典
局部数据库
客户/服务器结构(C/S模式):数据的集中存储和处理在服务器中完成,客户端和服务器端通过专用网络连接
浏览器/服务器结构(B/S模式):三层模型 —— Web浏览器;Web服务器,Oracle数据库