mongodb中的ObjectId是常量还是可以在创建文档后更改?
可以更新或任何其他操作更改吗?
对于几个文档,我的ObjectId似乎已经改变了,我无法弄清楚原因。
答案 0 :(得分:0)
不,_id
字段(如果这是ObjectId的意思)是只读的。当然,ObjectId类型的其他字段是完全可变的。
对于几个文档,我的ObjectId似乎已经改变了,我无法弄清楚原因。
不可能。但是,您可以创建新文档,该文档是另一个文档的副本,具有所有相同的字段,但ID不同。然后删除原始文档。 Et voila,文档出现以更改ID。
检查你的代码,也许会发生这种情况。
答案 1 :(得分:0)
您的对象ID绝对无法更改。
原因是因为对象ID是在以下内容上创建的:
年 ,
月,
日期,
小时,
分钟,
秒。
所以,绝对没有方法可以改变你的_id。
此外,请参阅following,您甚至无法更新对象ID。它由mongoDb为每次插入创建。