数据库基础知识的学习

首先要掌握标准SQL,各个厂商实现有差别。要很好的掌握SQL,离不开对关系模型的深刻理解,核心是集合论的知识,(FPL的list comprehension语法,同出一源,更具体的说,tuple关系演算)。何为关系?关系操作?关系是一个代数结构R(D,Op),所以叫关系代数学。适合进行几个Case study,解剖麻雀,以往都是靠直觉,没有理论指导。schema design的理论基础就是规范化理论,这个很有意思,多思考,还是比较直观的。

开发

其它编程接口,用到时可以很容易把握,ODBC/JDB啦。流行的数据库,都提供了很多语言的API,这个不是重点。

设计

需求分析
概念设计(ER,UML)
逻辑设计(Entity-Relation Mapping, Object-Relation Mapping)
物理设计 (选型,存储等多方面的考虑)
实施
运维

实现

并发控制方面,可串行化理论很强大,这方面一般教材讲的比较少,注意理论和实际算法的关系。

几个重点:

从抽象代数结构的角度理解relation,代数也是建立在集合论的基础上,集合论是数学的一个核心。
ERM/ORM算法
规范化理论(Armstrong公理系统,函数依赖,multivalued dependencies etc)
可串行化理论


你可能感兴趣的:(数据结构,sql,编程,算法,UML)