Object

english [??bd??kt] [

id

英[?d]

n. carte d'identité?; prédisposition génétique?; impulsion instinctive?;

Fonction MongoDB ObjectId syntaxe

Fonction?: ObjectId est une donnée de type BSON de 12 octets au format suivant?: les 4 premiers octets représentent l'horodatage, les 3 octets suivants sont le code d'identification de la machine et les deux octets suivants sont constitués de l'identifiant du processus (PID). les trois derniers octets sont des nombres aléatoires. Les documents stockés dans MongoDB doivent avoir une clé "_id". La valeur de cette clé peut être de n’importe quel type et la valeur par défaut est un objet ObjectId. Dans une collection, chaque document a une valeur "_id" unique pour garantir que chaque document de la collection peut être identifié de manière unique. La principale raison pour laquelle MongoDB utilise ObjectId au lieu d'autres méthodes plus conventionnelles (telles que l'augmentation automatique des clés primaires) est qu'il est laborieux et long d'augmenter automatiquement les valeurs des clés primaires sur plusieurs serveurs simultanément.

Fonction MongoDB ObjectId exemple

創(chuàng)建新的ObjectId
使用以下代碼生成新的ObjectId:

>newObjectId = ObjectId()
上面的語句返回以下唯一生成的id:

ObjectId("5349b4ddd2781d08c09890f3")
你也可以使用生成的id來取代MongoDB自動生成的ObjectId:

>myObjectId = ObjectId("5349b4ddd2781d08c09890f4")
創(chuàng)建文檔的時間戳
由于 ObjectId 中存儲了 4 個字節(jié)的時間戳,所以你不需要為你的文檔保存時間戳字段,你可以通過 getTimestamp  函數(shù)來獲取文檔的創(chuàng)建時間:

>ObjectId("5349b4ddd2781d08c09890f4").getTimestamp()
以上代碼將返回 ISO 格式的文檔創(chuàng)建時間:

ISODate("2014-04-12T21:49:17Z")
ObjectId 轉(zhuǎn)換為字符串
在某些情況下,您可能需要將ObjectId轉(zhuǎn)換為字符串格式。你可以使用下面的代碼:

>new ObjectId().str
以上代碼將返回Guid格式的字符串::

5349b4ddd2781d08c09890f3