Eav For Artisan.

dev-main 2024-07-30 20:38 UTC

This package is not auto-updated.

Last update: 2024-09-25 19:45:49 UTC


README

工作进行中

EAV

实体-属性-值模型(EAV)是一种数据模型,以空间高效的方式编码实体,其中可用于描述这些实体的属性(属性、参数)的数量可能非常庞大,但实际上适用于特定实体的数量相对较小。

wikipedia

文档

EAV 文档

何时使用

  • 让我们考虑一种情况,其中可以使用多个不同的属性来描述实体,但实际上只有少数属性适用于每个实体。一个选项是创建一个表,其中每列代表一个属性;这对于具有固定属性数量的实体是合适的,其中所有或大多数属性对于大多数对象都有值。然而,在我们的情况下,我们最终会得到记录,其中大多数列都是空的,因为属性可能是未知的或不适用。为了解决上述问题,你可以应用 EAV(实体、属性、值)模型。

  • 拥有一个可能随时间变化的宽松模式。描述实体的属性表不受特定列数的限制,这意味着在需要引入新属性时不需要重新设计模式。随着数据库的发展,属性的数量可以垂直增长,而无需结构更改。

EAV 的限制

  • 在 EAV 模型中,实体数据更分散,因此选择整个实体记录需要多个表连接。请查看此内容