php - 具有多个(灵活)变量的产品的数据库设计

标签 php mysql database-design entity-attribute-value webshop

我的“问题”或“挑战”有很多问题。但它们都不符合我的需求。好的,我开始了:

我想要一个保存可变属性的数据库。现在我将它们作为列名“硬编码”到数据库中(参见图片)。请参阅“颜色”和“尺寸”。但是如果我想要一个新属性怎么办?例如“模型”。我需要调整数据库并添加一列。我不想要这个。

enter image description here

你有什么想法吗?过去几个月我一直在思考解决方案,但到目前为止还没有什么好的结果......

最佳答案

所以,在所有评论之后,这就是现在的样子。首先是产品表:

table: products
column: id
column: name
column: categoryId

然后是包含库存元素的表格。产品的每个变体都应在此处表示:

table: items
column: id
column: productId
column: stock
column: price

最后是包含库存商品属性的表格:

tablet: attributes
column: id
column: itemId
column: type <color,size>
column: value <yellow,brown,large,small>

关于php - 具有多个(灵活)变量的产品的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42867358/

相关文章:

php - 使用 zipArchive addFile() 不会将图像添加到 zip

php - 以 php foreach 和 sql group by 为标题

javascript - PHP REST 服务器 - AJAX - JSON

php - 让 APC 与 spl_autoload_register 配合使用

MySql 嵌套选择和内部连接

database - 第二范式/规范化混淆 : Primary Key? 复合键?

sql - 我们可以有一个不是任何其他表中的主键的外键吗?

mysql - 每次调用 gorm.Open() 时都会创建一个新的连接池吗?

php - 在html表格中显示并行数据

mysql - 使用可选列正确规范化数据库