数据模型的设计原则

原则1:能拆分出1:N关系的表就尽可能拆分成多表建立关系

举例,原表:人员id、姓名、性别、体重 (kg) 
id姓名性别体重
1小洪90
2小林70
3小黄50
这张表无法进行拆分,每个人对其各个字段之间都是严格的1:1关系——一个人有唯一的姓名、性别,以及体重。
但如果这是一个减肥组织,每个人都需要记录每周日的体重,那么如果不做拆分,原表就会变成这样:
id人员id姓名性别日期体重
11小洪10/1090
22小林10/1070
33小黄10/1050
41小洪10/1780
52小林10/1771
63小黄10/1753
此时就应当建立一张“每周体重表”,并让人员表对其建立1:N的关系,因为加入日期字段后,每个人对ta每周的体重不再是1:1而构成了1:N的关系。具体如下操作:
人员表:
id姓名性别
1小洪
2小林
3小黄
每周体重表:
id日期体重人员id
110/10901
210/10702
310/10503
410/17801
510/17712
610/17533

原则2:除了基于原则1建立的关系外,不再增加不必要的数据关系

必要与否由各张表能否通过既有的关系查询到想要的数据为准

数据模型的命名规则

必看:
  • 不支持大写
  • 支持小写字母、下划线、数字, 不能以数字、下划线开头
  • 不要用关键字(like、index等)
  • 数据模型名称不要加list
建议
  • 见名知意
  • 名词单词
  • 两个数据模型之间有多层关系时, 名称需要特别区分

UML图的绘制

如果所有用到的表之间存在2个以上的关系,建议用uml图画一画整个数据框架的结构来帮助自己理清逻辑。uml工具在【飞书文档】中有提供。
建议飞书的uml图只使用到文字、类2、项目1、箭头三种组件,需要修改箭头样式可在上方栏修改,一般只用直线和90度折线2种。
建议双击放大观看

如何将UML图呈现在Zion中

1. 设计UML图

2. ZED中配置数据模型

3. 后台添加数据

4. 数据绑定至组件上

5. 生成预览,即可在小程序中看到数据内容

2022-08-24
0 0