MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongo ObjectId (_id) mit benutzerdefinierter Zeit generieren?

Ja, das ist möglich. Im C#-Treiber gibt es beispielsweise einen Konstruktor für ObjectId wo Sie einen Zeitstempel übergeben können, siehe diese Quelldatei . Am einfachsten ist es, die Hilfsmethode GenerateNewId zu verwenden :

var id = ObjectId.GenerateNewId(new DateTime(2012, 01, 01));

Ich weiß nicht, welche Programmiersprache Sie verwenden und ob der Treiber in dieser Sprache diese Funktion unterstützt, aber ich schätze, diese ist weit verbreitet.

BEARBEITEN:This Frage enthält den Code für Java, Mungo und Python, und die Antwort enthält Code für PHP. "Weit verbreitet" scheint eine falsche Annahme zu sein, es ist zum Beispiel noch nicht im PHP-Treiber implementiert.