IRIS / Chronicles 中的 Response Type 字段属性

Response Type 在关系数据库中可能没有这个选项,我们对关系数据库表中的数据返回的数据就是是数据,通常不再做过多定义。

但是 IRIS 会对返回的数据也做一些定义,这个就是我们说的 Response Type。

Single (单一)

这个好说,就是返回一条数据。

这个就和我们的关系数据库差不多,你返回的数据就是数据,不管你这个数据是多少行。

Multiple (多条)

这里就好像有一个映射关系了。

类似于关系数据库中的 1 对多的关系。

比如说感冒症状,这里可能会有咳嗽,发烧,肌肉酸疼等症状,所以在这里需要返回多条。

如果我们对应关系数据库,把上面的症状全部存储到一个表中,那么这里不就是 1 对多的关系了。

Related

这个就有点绕了。

Related 首先和 Multiple 类似,是可以有多条记录。

但这里需要注意的是,数据的组成是通过 2 个或者多个 Item 打包在一起的。

举例来说,电话,我们首先有一个 Item 定义的是电话类型,另外一个 Item 定义的是电话号码,在实际上我们会把这 2 个 Item 放在一个 Group 里面,这个叫做 Packing。

如果我们有一个数据 需要同时返回这个 Group 中的这 2 个,同时这个 Group 中的数据又是一一对应的,我们就可以说这个返回的数据是 Related。

Related‐multi

相对 Related 更进一步。

Related 是一行对应的一行的数据,Related‐multi 在 Related 的基础上每一行对应多行的数据。

上面的图片就比较好的说明了我们对返回的数据的限制。

这里有个坑,就是 200 和 210 的关系。

如果 210 对应过敏的反应只有一种的话,那么 200 和 210 都是 Related。

但实际上对过敏的反应可能有多钟,比如说对于 Thyme(百里香)的过敏反应有昏睡和发烧。

那么实际上我们就把 200 和 210 拆分开了,200 还是 Related,我们把 210 细化成了 Related‐multi