关系数据库
维基百科,自由的百科全书
-{T|zh-tw:關聯式資料庫;zh-cn:关系数据库}- -{A|zh-tw:關聯式資料庫;zh-cn:关系数据库}-是建立在集合代数基础上,应用数学方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用-{A|zh-tw:關聯模型;zh-cn:关系模型}-来表示。
关系模型由-{A|zh-tw:關聯;zh-cn:关系}--{A|zh-tw:資料;zh-cn:数据}-结构、关系操作集合、关系完整性约束三部分组成。
目录 |
[编辑] 关系数据结构
关系模型中数据的逻辑结构是一张二维表。
[编辑] 关系操作
关系模块中常用的操作包括:
- 数据查询
- 选择
- 投影
- 连接
- 并
- 交
- 差
- 除
- 数据操作
- 增加
- 删除
- 修改
[编辑] 完整性约束
完整性约束包括:
- 实体完整性
- 参照完整性
- 用户定义完整性
[编辑] 关系数据语言SQL
SQL(Structured Query Language)语言是1974年由Boyce和Chamberlin提出的一种介于关系代数与关系演算之间的结构化查询语言,是一个通用的、功能极强的关系性数据库语言。
[编辑] 模式结构
- 外模式
- 模式
- 内模式
[编辑] 表
[编辑] 视图
[编辑] 索引
[编辑] 全关系系统十二准则
全关系系统应该完全支持关系模型的所有特征。关系模型的奠基人E.F.Codd具体地给出了全关系系统应遵循的基本准则。
- 准则0
- 一个关系形的关系数据库系统必须能完全通过它的关系能力来管理数据库。
- 准则1 信息准则
- 关系数据库系统的所有信息都应该在逻辑一级上用表中的值这一种方法显式的表示。
- 准则2 保证访问准则
- 依靠表名、主码和列名的组合,保证能以逻辑方式访问关系数据库中的每个数据项。
- 准则3 空值的系统化处理
- 全关系的关系数据库系统支持空值的概念,并用系统化的方法处理空值。
- 准则4 基于关系模型的动态的联机数据字典
- 数据库的描述在逻辑级上和普通数据采用同样的表述方式。
- 准则5 统一的数据子语言
- 一个关系数据库系统可以具有几种语言和多种终端访问方式,但必须有一种语言,它的语句可以表示为严格语法规定的字符串,并能全面的支持各种规则。
- 准则6 视图更新准则
- 所有理论上可更新的视图也应该允许由系统更新。
- 准则7 高级的插入、修改和删除操作
- 系统应该对各种操作进行查询优化。
- 准则8 数据的物理独立性
- 无论数据库的数据在存储表示或存取方法上作任何变化,应用程序和终端活动都保持逻辑上的不变性。
- 准则9 数据逻辑独立性
- 当对基本关系进行理论上信息不受损害的任何改变时,应用程序和终端活动都保持逻辑上的不变性。
- 准则10 数据完整的独立性
- 关系数据库的完整性约束条件必须是用数据库语言定义并存储在数据字典中的。
- 准则11 分布独立性
- 关系数据库系统在引入分布数据或数据重新分布时保持逻辑不变。
- 准则12 无破坏准则
- 如果一个关系数据库系统具有一个低级语言,那么这个低级语言不能违背或绕过完整性准则。