破坏ID和键引用

时间:2018-12-11 11:28:26

标签: database postgresql database-design relational-database jsonb

我有下表来保留产品的属性:

属性

id name        
1  color       
2  material   

属性值

id attribute_id value    
  1     1       black    
  2     2       plastic

产品

id  name     attributes
 1  Laptop   {1:"1",2:"2"}
产品表中的

属性由ID(1)引用。但是它也可以通过属性名称来引用:

{"color":"black"}

尽管它破坏了数据完整性,但允许上载属性尚未在数据库中的产品。这些可以稍后添加,然后可以对其进行过滤。 我想就如何利用两种方法的好处提出建议?我想通过id或名称来引用现有属性,并通过Products表中的名称来引用所有其他属性。

0 个答案:

没有答案