object

英[??bd??kt]? ?美[?ɑ:bd?ekt]??

n.物件;目標(biāo);賓語(yǔ);客體,物件

##vi .不贊成,反對(duì);抱反感

vt.提出…作反對(duì)的理由

#id

英[?d]??

# #n.身分證;遺傳素質(zhì);本能衝動(dòng);識(shí)別碼

MongoDB ObjectId函數(shù) 語(yǔ)法

作用:ObjectId 是一個(gè)12位元組BSON ?類型數(shù)據(jù),有以下格式:前4個(gè)位元組表示時(shí)間戳接下來(lái)的3個(gè)位元組是機(jī)器標(biāo)識(shí)碼緊接的兩個(gè)字節(jié)由進(jìn)程id組成(PID)最後三個(gè)位元組是隨機(jī)數(shù)。 MongoDB中儲(chǔ)存的文件必須有一個(gè)"_id"鍵。這個(gè)鍵的值可以是任何類型的,預(yù)設(shè)是個(gè)ObjectId物件。在一個(gè)集合裡面,每個(gè)文檔都有一個(gè)唯一的"_id"值,來(lái)確保集合裡面每個(gè)文檔都能被唯一標(biāo)識(shí)。 MongoDB採(cǎi)用ObjectId,而不是其他比較常規(guī)的做法(例如自動(dòng)增加的主鍵)的主要原因,因?yàn)樵诙鄠€(gè) 伺服器上同步自動(dòng)增加主鍵值既費(fèi)力還費(fèi)時(shí)。

MongoDB ObjectId函數(shù) 範(fàn)例

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

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

ObjectId("5349b4ddd2781d08c09890f3")
你也可以使用生成的id來(lái)取代MongoDB自動(dòng)生成的ObjectId:

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

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

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

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

5349b4ddd2781d08c09890f3
#