数据库常用知识点

范式

第1范式

一范式就是属性不可分割。 
就是说学生身材信息包含(身高 体重)。这不符合第1范式,因为是可以拆分的,分为身高 体重

第2范式

二范式就是要有主键,要求其他字段都完全依赖依赖于主键。消除了部分依赖 
部分依赖多出现在主见个数大于1的情况,比如学生id,学生姓名,课程 id,课程分数。(不符合) 
这儿的主键是(学生 id,课程 id) 
(学生 id,课程 id) -> 课程分数,课程分数需要学生 id 和课程 id 共同决定,这儿是完全依赖的关系 
但是(学生 id,课程 id) -> 学生姓名,这儿只需要学生 id 就能确定学生姓名,是部分依赖。所以不符合第2范式

第3范式

在2范式的基础上,不存在传递依赖的情况。 
比如 学生 id,学生,指导老师,老师地址。 
学生 id ->指导老师,指导老师->老师地址,虽然老师地址是完全依赖于学生 id 的,但是这里面是传递依赖,不符合第3范式。

第4范式

一般用不到3范式,不纠结


数据库事务

注意就是原子性 一致性 隔离性 持久性

原子性(Atomic)(Atomicity)

事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。

一致性(Consistent)(Consistency)

事务在完成时,必须使所有的数据都保持一致状态。就是比如取了200块钱,那么对应的账户就要少200块钱

隔离性(Insulation)(Isolation)

由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为隔离性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。

持久性(Duration)(Durability)

事务完成之后,它对于系统的影响是永久性的。该修改即使出现致命的系统故障也将一直保持。


关键字+主关键字+候选关键字

如果某个字段或多个字段的值可以唯一地标识一条记录,则该字段就称为关键字。

如果一个关键字是用以区别每条记录的唯一性标志,并作为该表与其他表实现关联的,则称为主关键字或主码。

除主关键字以外的其他关键字称候选关键字。

如有一个表,字段为: 
id firstname lastname address phone IDcard 
那么id或IDcard或firstname+lastname都可以说是关键字。 
其中id为主关键字,IDcard和firstname+lastname为候选关键字

主属性

  在一个关系中,如一个属性是构成某一个候选关键字的属性集中的一个属性,则称它为主属性。如一个属性不是构成该关系任何一个候选关键字的属性集的成员,就称它为非主属性。例如表1.7中,“学号+课程号”是关键字,那么“学号”是主属性,“课程号”是主属性,分数是非主属性。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值