Java开发工程师知识图谱


1.数据库三范式

  • 所有字段值都是不可分解的原子值
  • 需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中
  • 需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关

1.1 乐观锁和悲观锁?

  • 乐观锁在取数据的时候默认其他人不会进行修改,但是在提交更新的时候它会去判断一下有没有其他人更新了这个数据
  • 悲观锁在取数据的时候默认其他人会对数据进行修改,所以每次它都会上锁,直到自己修改完数据才释放锁

1.2 数据库如何实现乐观锁?

可以在表内添加一个version字段,每次修改成功就加1,这样在每次数据修改的时候可以对比一下自己持有的version和当前的version字段是不是一致就可以实现乐观锁


文章作者: Z.Wfeng
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Z.Wfeng !
  目录