刚接触mongodb,在更新数据时出现了标题中的报错,报错直译为"如果不在查询中指定完整的碎片密钥,则不允许更新碎片密钥",
我这里操作的集合设置了组合的分片键.也就是多个字段组成的分片键,更新的field中包含了分片键,我的更新条件中不包含所有的分片键字段.所以报了上面的错.只需要在更新条件中加上所有分片键就可以了.
另外,需要注意的是,想要更新分片键,必须使用updateOne。也就是一次只能更新一行。
刚接触mongodb,在更新数据时出现了标题中的报错,报错直译为"如果不在查询中指定完整的碎片密钥,则不允许更新碎片密钥",
我这里操作的集合设置了组合的分片键.也就是多个字段组成的分片键,更新的field中包含了分片键,我的更新条件中不包含所有的分片键字段.所以报了上面的错.只需要在更新条件中加上所有分片键就可以了.
另外,需要注意的是,想要更新分片键,必须使用updateOne。也就是一次只能更新一行。