CouchDB实体关系

时间:2013-07-09 09:31:05

标签: couchdb

我来自SQL背景,我刚刚开始关注CouchDB。

我试图了解CouchDB如何处理多个关系。

在SQL中,我会有一个产品表,例如,行包含描述产品的列。例如"ID", "Product Name", "Description", "Amount in Stock"。然后,我会创建一个新的订单表,并按ID将其链接到上面提到的产品表。

据我所知,我可以创建一个CouchDB订单文档,并在本文档下列出产品及其数据。我看到的问题是,如果我有很多这些订单并且我想编辑描述,那么我需要编辑所有订单文档以反映这些更改。

我的问题是如何设计这个,以便我只需要更改一个文档中的数据,它会反映在包含该产品的订单文档中?

1 个答案:

答案 0 :(得分:1)

不要将描述存储在订单文档中的字段中,只存储产品的ID,每次需要订单时都应该从数据库中获取产品以检查描述的当前值。

如果您需要在一个表中显示包含不同产品的大量订单,您可以使用“keys”参数在一个查询中查询数据库中的所有产品。它运作得非常快。