Conversion MongoDB UUID de Mongo Shell s'avère être TYPE 03, ancien format. Comment pouvons-nous le faire fonctionner avec TYPE 04, format binaire?Mongo UUID Type 03 au lieu de 04 à partir de mongo shell
> db.foo.insert({"_id":1000,"key1":UUID("240003A09CEC456AB57B98FF8E0E45DB")})
WriteResult({ "nInserted" : 1 })
> db.foo.find({_id:1000})
{ "_id" : 1000, "key1" : BinData(3,"JAADoJzsRWq1e5j/jg5F2w==") }
> db.version()
3.4.2
De code Java, nous pouvons utiliser bytebuffers et insérer comme UUID binaire de type 04, échantillon: BinData (4, "XWCwWqIVTfiEkTx9Yl + 2UQ ==").
Merci pour l'aide. Juste la curiosité, une raison pour laquelle la fonction UUID() est toujours conservé en tant que vieux format hérité? Est-ce qu'un type d'option peut être ajouté pour dire le type 04. – dilsingi
@dilsingi Ca a toujours été ainsi, je ne vois pas comment le shell change. Il y a probablement un ticket JIRA, mais en tant que «service public», ce ne serait pas une haute priorité. Comme indiqué, il y a 'HexData' du shell ainsi que la méthode démontrée pour déplacer des données entre différents types. Le support principal est plutôt donné aux implémentations "pilote", que vous devriez utiliser à la place de n'importe quel usage industriel. –
@dilsingi Ajout du problème JIRA pour référence. Mais comme indiqué, c'est une faible priorité. Utilisez les méthodes comme indiqué lorsque vous travaillez depuis le shell. –