0

我有一个这样的文档数据库:

{
    "_id" : "37686aeb8d65e77665af55e69801a62c",
    "ip"  : "192.168.1.1",
    "mac" : "01:23:45:67:89:ab"
}

我有一个带有更新处理程序的设计文档。如何检查新文档是否具有唯一的 mac 地址?在 CouchDB 中可以吗?

4

1 回答 1

0

唯一保证跨数据库的唯一值是_id,因此如果您想将此控件委托给 CouchDB,则必须将其设置为 mac 地址。

否则,您必须通过 map 和 reduce 的视图函数自己处理它:map 函数发出 mac 地址,减少一组它们并计数。但是这样做的代价是在添加数据之前进行额外的视图查找以及从您这边清除重复项的一些逻辑,但是您总是会遇到重复值同时在数据库中的情况。

于 2013-01-28T22:58:34.177 回答