Tag: 实体属性值

实体属性值(EAV)的替代scheme?

我们的数据库是基于EAV(Entity-Attribute-Value)模型devise的。 那些曾经使用过EAV模型的人,为了灵活性而知道所有的垃圾。 我问客户有关使用EAV模型(灵活性)的原因,他们的回答是:他们的实体随着时间而改变。 所以,今天他们可能有一个有几个属性的表,但在一个月的时间里,可能会添加一些新的属性,或者现有的属性可能会被重命名。 他们需要生成报告以及时返回到任何阶段,并根据当前实体的形状查询数据。 我知道这对传统的关系模型来说是不可行的,但我个人认为EAV是反模式的。 是否有其他的替代模型,使我们能够捕捉实体和实例变化的时间维度? 干杯,Mosh

Magento – 检索具有特定属性值的产品

在我的块代码中,我试图以编程方式检索具有特定值的属性的产品列表。 或者,如果这是不可能的,如何检索所有产品,然后过滤它们只列出具有特定属性的产品? 我将如何使用标准布尔filterAND或OR执行search以匹配我的产品子集?

如何转换一个MySQL实体 – 属性值模式

我需要devise存储所有文件元数据(即文件名,作者,标题,创builddate)和自定义元数据(已被用户添加到文件,例如CustUseBy,CustSendBy)的表格。 自定义元数据字段的数量不能事先设置。 事实上,确定在文件上添加了多less个自定义标签的唯一方法是检查表中存在的内容。 为了存储这个,我创build了一个基本表(具有文件的所有公共元数据),一个Attributes表(包含可以在文件上设置的附加可选属性)和一个FileAttributes表(它为文件的属性赋值)。 CREAT TABLE FileBase ( id VARCHAR(32) PRIMARY KEY, name VARCHAR(255) UNIQUE NOT NULL, title VARCHAR(255), author VARCHAR(255), created DATETIME NOT NULL, ) Engine=InnoDB; CREATE TABLE Attributes ( id VARCHAR(32) PRIMARY KEY, name VARCHAR(255) NOT NULL, type VARCHAR(255) NOT NULL ) Engine=InnoDB; CREATE TABLE FileAttributes ( sNo INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, […]

实体属性值数据库与严格的关系模型电子商务

可以肯定地说, EAV / CR数据库模型是不好的。 这就是说, 问题: 应该使用哪种数据库模型,技术或模式来处理描述可以在运行时更改的电子商务产品的属性“类”? 在一个好的电子商务数据库中,你将存储选项类(如电视分辨率,然后有一个分辨率为每个电视,但下一个产品可能不是电视,没有“电视分辨率”)。 你如何存储它们,有效地search,并允许你的用户设置产品types与variables领域描述他们的产品? 如果search引擎发现客户通常根据控制台深度search电视,则可以将控制台深度添加到您的字段,然后在运行时为每个电视产品types添加一个深度。 好电子商务应用程序中有一个很好的共同特点,他们展示了一组产品,然后有“深入”的侧面菜单,您可以看到“电视分辨率”作为标题,前五个最常见的电视分辨率发现集合。 您单击一个,它只显示该分辨率的电视机,允许您通过在侧面菜单上select其他类别进一步深入查看。 这些选项将是运行时添加的dynamic产品属性。 进一步讨论: 长话短说, 互联网上有什么链接或模型描述,可以“学术上”修复以下设置? 我感谢诺埃尔·肯尼迪提出了一个类别表,但是这个需求可能会比这个更大。 我在下面用不同的方式描述它,试图突出重要性。 我可能需要一个观点更正来解决这个问题,否则我可能需要深入到EAV / CR。 喜欢对EAV / CR模型的正面回应。 我的开发人员都说杰弗里·肯普(Jeffrey Kemp)在下面提到过:“新实体必须由专业人员来build模和devise”(脱离上下文,阅读他的回答)。 问题是: 实体每周添加和删除属性 (search关键字决定未来的属性) 新的实体每周到达 (产品由部件组装而成) 旧的实体每周都会消失 (存档,不太受欢迎,季节性) 客户想要为产品添加属性有两个原因: 部门/关键字search/同类产品之间的比较图表 消费者产品configuration之前结帐 这些属性必须有意义,而不仅仅是关键字search。 如果想要比较所有有“奶油糖霜”的蛋糕,可以点击蛋糕,点击生日主题,点击奶油糖霜,然后检查所有有趣的蛋糕,知道他们都有奶油糖霜。 这不是特定的蛋糕,只是一个例子。