首先要掌握标准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)
可串行化理论
开发
其它编程接口,用到时可以很容易把握,ODBC/JDB啦。流行的数据库,都提供了很多语言的API,这个不是重点。
设计
需求分析
概念设计(ER,UML)
逻辑设计(Entity-Relation Mapping, Object-Relation Mapping)
物理设计 (选型,存储等多方面的考虑)
实施
运维
实现
并发控制方面,可串行化理论很强大,这方面一般教材讲的比较少,注意理论和实际算法的关系。
几个重点:
从抽象代数结构的角度理解relation,代数也是建立在集合论的基础上,集合论是数学的一个核心。
ERM/ORM算法
规范化理论(Armstrong公理系统,函数依赖,multivalued dependencies etc)
可串行化理论