数据库 - 为什么mongodb删除文档必须用ObjectId
伊谢尔伦
伊谢尔伦 2017-05-02 09:21:33
0
3
728


为什么根据id删除文档必须要用ObjectId这个方法呢?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(3)
左手右手慢动作

虽然你看到的好像是字符串,但 document 的 _id 其实是一个 ObjectId 对象,所以必须用 ObjectId() 方法把字符串转成对象才能使用

洪涛

补充一些基础知识。
mongo shell是建立在JavaScript的基础上的,不管是V8还是SpiderMonkey(两者都曾经作为mongo shell的引擎被使用过),都遵循EMCAScript并实现了它的一个子集。这就意味着shell里面的一切数据类型必须是ECMA标准中规定的数据类型。如果去查标准的话,JS的数据类型是非常有限的,基本上满足不了一个数据库的需要。所以有了BSON,支持那些JSON规范里没有的数据类型。ObjectID就是其中之一。所以剩下的问题就是如何在JS的语法下表达一个它没有的数据类型,结果就是你看到的ObjectID("...")

迷茫

因为_id是全球唯一的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板