主扩展模式
将几个相似的对象的共有属性抽取出来,形成一个“公共属性表”,且“公共属性表”与“专有属性表”是一对一的关系。“专有属性表”可以看做是“公共属性表”的扩展,两者合在一起就是对应特定对象的完整描述。
对象个数不多,各个对象之间的属性有一定差别,各个对象的属性在数据库设计阶段能完全确定,各个扩展对象有独立的、相对较复杂的业务处理需求,此时就用“主扩展模式”。
主从模式
数据库设计模式中最常见的,也是用的最多的一种模式,描述两个表之间的主从关系,典型的一对多关系。对象的个数较多且不固定,各个对象之间的属性几乎没有差异,对象的属性在数据库设计阶段能够完全确定,各个对象没有独立的业务处理需求,此时用“主从模式”;比如贴吧的实现,整个贴吧就是一个主表,不同楼主发的帖子就是各个从表。
名值模式
通常用来描述在系统设计阶段不能完全确定属性的对象,这些对象的属性在数据库运行时会有很大的变更,或是多个对象之间的属性存在很大的差异。
对象个数极多;各个对象之间属性有较大差异,对象属性在数据库设计阶段还不能确定,或者在系统运行时有较大变更,各个对象没有相互独立的业务处理需求,此时用“名值模式”
多对多模式
也是较为常见的一种SQL设计模式,他所描述的对象不分主次,地位对等,互为一对多关系。
多对多模式需要在两个表之间建立一个关联表,这个关联表是多对多关系的核心。
两个对象互为一对多关系就适用多对多模式