2012-03-29 4 views
7

ただ後半、疲れ、ここに座ってについて考え始め、Wonder:MongoDB _idはデフォルトでユニークですか?

は、デフォルトではMongoDBは_id一意である、または私はユニークに設定する必要がありますか?

多くの場合、ちょっとばかげた質問です。しかし、これについて実際には何も見つかりません。そして私の悪い英語では、私はいくつかの長い説明を得ると理解しがたくなることがあります。

は、すべての文書が_idフィールドを含む

答えて

10

:-)私と一緒に負担してください。すべてのコレクション(上限があるコレクションを除く)は、_idに一意のインデックスを自動的に作成します。

ことは、これを試してみてください:

db.system.indexes.find() 
+0

ご返信ありがとうございます。今度はあまりにも不思議に思うことなく眠ることができます:-) – PeterBechP

+8

12分待って答えを受け入れてから眠りについてください:) –

+1

私はします:-) – PeterBechP

2

OK ..ショートバージョン

YESYESYES

_id uniqid by default、MongoDBはデフォルトで_idにインデックスを作成し、あなたはすべての設定に

+0

シンプルでわかりやすい。ありがとう:-) – PeterBechP

1

を必要としません。 MongoDB's manualによれば、答えははい、それはデフォルトによってユニークです:

MongoDBのコレクションが作成されたときにすべてのコレクションのために、_idフィールドで昇順一意のインデックスである_idインデックスを作成します。 _idフィールドのインデックスは削除できません。

関連する問題