English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En los capítulos anteriores, hemos estado utilizando MongoDB ObjectId. En este capítulo, aprenderemos sobre la estructura de ObjectId.
ObjectId es12El tipo de BSON del byte, con la siguiente estructura-
Antes4Un byte representa los segundos desde el nuevo período unix
Los siguientes3Un byte es el identificador de la máquina
Los siguientes2Un byte está compuesto por el id de proceso
Finalmente3Un byte es un valor de contador aleatorio
MongoDB utiliza ObjectIds como_id
El valor predeterminado de cada campo de documento, que se genera al crear cualquier documento. La combinación compleja de ObjectId asegura que todos los campos _id sean únicos.
Para generar un nuevo ObjectId, utilice el siguiente código-
>newObjectId = ObjectId()
La siguiente declaración devuelve el siguiente id generado de manera única-
ObjectId("5349b4ddd2781d08c09890f3")
Además de proporcionar ObjectId generado por MongoDB, también puede proporcionar12ID en bytes-
>myObjectId = ObjectId("5349b4ddd2781d08c09890f4")
Dado que _id ObjectId se almacena por defecto4Timestamp en bytes, por lo que en la mayoría de los casos, no es necesario almacenar la fecha y hora de creación de cualquier documento. Puede obtener la fecha y hora de creación del documento utilizando el método getTimestamp-
>ObjectId("5349b4ddd2781d08c09890f4).getTimestamp()
Esto devolverá la fecha y hora de creación del documento en formato ISO-
ISODate("2014-04-12T21:49:17Z")
En algunos casos, es posible que necesite valores ObjectId en formato de cadena. Para convertir ObjectId a formato de cadena, utilice el siguiente código-
>newObjectId.str
El código siguiente devolverá el formato de cadena de Guid-
5349b4ddd2781d08c09890f3