数据库概念总结

数据库模式

在这里插入图片描述 数据的逻辑独立性:模式改变时,对应的外模式/模式映像发生改变。应用程序是根据外模式编写的,从而应用程序不必,保证了数据与程序的逻辑独立性
数据的物理独立性:数据库的物理结构改变时,对应的模式/内模式映像发生改变,可以使模式保持不变,从而应用程序保持不变,保证了数据与应用程序的物理独立性。

牛客网–小王子X

传统数据模型

层次模型: 按照层次结构组织数据库数据,用树形结构表示实体集与实体集之间的联系。
网状模型: 利用网状结构表示实体集与实体集之间联系的模型。
关系模型: 以集合论中的关系概念为基础发展起来的一种数据模型,用二维表表示现实世界实体集与实体集间的联系。

完整性约束

  1. 实体完整性约束: 关系的主关键字不能重复也不能为空。
  2. 域完整性约束: 数据字段的取值范围、字段单位等方面的合理性。
  3. 参照完整性约束: 主关键字与外部关键字之间的约束。
  4. 用户完整性约束: 根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。

数据库设计流程

  1. 需求分析: 通过自上向下或自下向上分析需求,形成需求说明书。
  2. 概念设计阶段: E-R图。
  3. 逻辑设计阶段: 将E-R图转换为关系模型。
  4. 物理设计阶段: 为数据库选择合适的存储结构和存取路径。
  5. 系统实施: 数据载入,编程,测试,试运行。
  6. 运行维护: 功能扩展,数据库日常维护。

SQL语言

  1. 查询(DQL): select(既是DQL又是DML)
  2. 操作(DML): insert,update,delete,select
  3. 定义(DDL): create,drop
  4. 控制(DCL): grant,commit,rollback,revoke

SQL集合查询

并:union
交:intersect
差:except

视图

定义: 由一个表或多个表导出的虚拟的表,内容由查询定义,具有普通表的结构,但是不存储数据。
修改: 对视图的修改最终会转换为对基本表的修改。

共享锁(S): 多个事务可以封锁一个共享页;
允许所有事务读但不允许修改共享页;
该页读取完毕之后释放共享锁。
排它锁(X): 只允许一个事务对页进行封锁。
该事务可以对页进行读或写,其它事务在排它锁释放之前无法访问该页;
该事务结束之后释放排它锁。
更新锁(U): 添加U锁的页不可以添加X或U锁;
允许其它事务读,一事务当要修改数据U锁会升级为X锁;
该事务结束后释放U锁。

表的属性

  1. 候选码: 能够唯一地标识一个元组的最小属性组。
    准确定义:设关系R有属性A1,A2,…,An,其属性集K=(Ai,Aj,…,Ak)当且仅当满足下面的条件时,K被称为候选键。
    (1)唯一性:关系R的任意两个不同的元组,其属性集K的值是不同的。
    (2)最小性:组成关系键的属性集(Ai,Aj,…,Ak)中,任一属性都不能从属性集K中删掉,否则将会违反唯一性原则。
    2.主键: 如果一个关系有多个候选码,选中的其中一个作为主码。
    3.主属性: 包含在任何一个候选键中的属性为主属性。
    4.非主属性: 不包含在任何一个候选键中的属性为非主属性。
    5.外键: 关系模式R中属性或属性组X并非R的键,但X是另一个关系模式的键,则称X是R的外部键,简称外键。

函数依赖公理

在这里插入图片描述在这里插入图片描述

闭包算法

//输入:X,函数依赖F
//输出:X+,
//步骤
X+:=X
while(X+发生变化)do
	begin for each 函数依赖A->B in F do
		begin
			if A包含于X+
			then X+:=X+∪B
		end
	end
end

ACID

原子性: 要么全做要么全不做,通过事务管理子系统实现
一致性: 事务执行的结果要从一个一致性状态变到另一个一致性状态,一致性是指数据库中数据满足完整性约束,通过完整性约束子系统实现
隔离性: 并发执行的事务应该相对独立,一个事务的执行不能被其它事务干扰,通过并发控制子系统实现
持久性: 指一个事务一旦提交,它对数据库的改变应该是永久的,其它任何故障或操作不应该对其执行结果有任何的影响,通过恢复管理子系统实现

并发带来的问题

分为三类,丢失或覆盖更新,脏读,不可重复读
在这里插入图片描述

可串行化调度

多个事务的并发执行是正确的,当且仅当其结果与按某一顺序的串行执行结果相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值