3.1 MySQL三大范式
MySQL的三大范式能够规范开发人员对数据表的设计,使得开发人员能够设计出简洁、优雅的数据表结构。
3.1.1 第一范式
第一范式主要是确保数据表中每个字段的值必须具有原子性,也就是说数据表中每个字段的值为不可再次拆分的最小数据单元。
例如,表3-1所示的t_user数据表的设计就不符合第一范式。
表3-1 不符合第一范式的t_user数据表的设计
![](https://img-service.csdnimg.cn/img_convert/9ecb64d653d8430a86beba29aeb8fa2f.jpg?x-oss-process=image/watermark,text_ZG1mZW5vd2JlaWppbmc,color_FFFFFF,size_9,shadow_100,t_100,g_se,order_0,align_2,interval_4)
其中,user_info字段为用户信息,可以进一步拆分成更小粒度的字段,不符合数据库设计对第一范式的要求。将user_info拆分后的数据表设计为如表3-2所示。
表3-2 符合第一范式的t_user数据表的设计