hl
2017-05-17 18:54:42 +08:00
官方解释唯一索引的含义是这样的:
Unique Index
A unique index ensures that the indexed fields do not store duplicate values; i.e. enforces uniqueness for the indexed fields. By default, MongoDB creates a unique index on the _id field during the creation of a collection.
你的做法带来的效果是:
你对 pwd 字段做唯一索引,起到的作用是你插入的所有的记录中的 pwd 字段不能有重复
你的需求:
我默认你的 update 操作不是在通过命令行进行的试验,而是一个业务需求,这不是一个数据库级别的方案。
或许你在以前的关系型数据库比如 oracle,mysql,可能通过触发器之类的能实现的了。
但 mongodb 是个文档 nosql 数据库,是个 kv 的松散结构,你想要做到 pwd 字段 update 新的值进去不能和以前的值是一样的,这纯属“唯一索引”概念不清楚。
你需要的方案是:
通过书写一段逻辑代码,在 update pwd 字段时,对比库里的值和接收过来的值是否相同,不相同则进行更新,相同则返回给调用方 pwd 值不能与以前的一样。