検索

ホームページ  >  に質問  >  本文

数据库 - 为什么mongodb删除文档必须用ObjectId


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

伊谢尔伦伊谢尔伦2797日前736

全員に返信(3)返信します

  • ringa_lee

    ringa_lee2017-05-02 09:23:33

    表示されているものは文字列のように見えますが、ドキュメントの _id は実際には ObjectId オブジェクトなので、使用する前に ObjectId() メソッドを使用して文字列をオブジェクトに変換する必要があります

    返事
    0
  • PHP中文网

    PHP中文网2017-05-02 09:23:33

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

    返事
    0
  • 迷茫

    迷茫2017-05-02 09:23:33

    _id はグローバルに一意であるためです。

    返事
    0
  • キャンセル返事