校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Mongodb中關于GUID的顯示問題詳析

Mongodb中關于GUID的顯示問題詳析

熱門標簽:400電話到哪辦理優惠 云南大數據外呼系統 怎么更改高德地圖標注 上海市三維地圖標注 博樂電銷機器人 南寧外呼系統招商 機器人打電銷電話 電話機器人是電腦呼號嗎 鄭州網絡外呼系統價錢

發現問題

最近將一個程序的存儲遷移到了Mongodb,發現了一個現象,Guid類型寫入后,在程序里面讀取的和用客戶端工具展示的不一樣,一個簡單的示例如下:

 var doc = new {_id = 1, Value = Guid.Parse("{B63932BB-9688-432B-B3A0-C4AE3FD2696A}") };
 collection.InsertOne(doc.ToBsonDocument());

寫入DB后,我們從客戶端工具來查看它:

通過對比可以發現,展示的值和寫入的形式不一樣,但是讀取到的值卻是沒有問題的。這個問題可以從官方的文檔規范中找到答案:

官方文檔: http://bsonspec.org/spec.html

Mongodb中是將uuid其作為二進制類型存儲的,用一個subtype來標記其類型為uuid,在對C#,java,python提供的驅動中,默認是將其子類型映射了為3(Legacy UUID),這個在客戶端工具中也是有所展示的:

實際上,大多數客戶端工具也是能支持將Legacy UUID展示成我們寫入時候的那個樣子。

   

解決方法

雖然這個不影響程序的功能,但由于第一眼看到的字符串不是寫入的格式,很多時候是影響我們調試程序的。一個較好的解決方法是默認將以標準的UUID格式存儲,只需要設置一個全局配置即可:

 BsonDefaults.GuidRepresentation = GuidRepresentation.Standard; 

這樣就方便多了:

參考文章:

MongoDB Best Practices for UUID Data

總結

以上就是Mongodb中關于GUID的顯示問題的詳細內容,更多關于Mongodb中GUID顯示問題的資料請關注腳本之家其它相關文章!

標簽:益陽 秦皇島 白銀 寧夏 恩施 定西 杭州 澳門

巨人網絡通訊聲明:本文標題《Mongodb中關于GUID的顯示問題詳析》,本文關鍵詞  Mongodb,中,關于,GUID,的,顯示,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mongodb中關于GUID的顯示問題詳析》相關的同類信息!
  • 本頁收集關于Mongodb中關于GUID的顯示問題詳析的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 荥阳市| 板桥市| 长岭县| 平乡县| 珲春市| 达孜县| 宿州市| 毕节市| 博白县| 惠水县| 凤凰县| 江津市| 汝州市| 旬邑县| 阿合奇县| 黄石市| 遂昌县| 合阳县| 杭州市| 从化市| 堆龙德庆县| 临洮县| 鄢陵县| 龙门县| 梁河县| 孝义市| 庆城县| 南开区| 深水埗区| 永清县| 葫芦岛市| 建平县| 理塘县| 长岭县| 静宁县| 万荣县| 潢川县| 桦川县| 新化县| 会理县| 特克斯县|