欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mongodb中關(guān)于GUID的顯示問(wèn)題詳析

 更新時(shí)間:2020年05月06日 10:19:05   作者:天方  
這篇文章主要給大家介紹了關(guān)于Mongodb中GUID的顯示問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mongodb具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

發(fā)現(xiàn)問(wèn)題

最近將一個(gè)程序的存儲(chǔ)遷移到了Mongodb,發(fā)現(xiàn)了一個(gè)現(xiàn)象,Guid類型寫(xiě)入后,在程序里面讀取的和用客戶端工具展示的不一樣,一個(gè)簡(jiǎn)單的示例如下:

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

寫(xiě)入DB后,我們從客戶端工具來(lái)查看它:

通過(guò)對(duì)比可以發(fā)現(xiàn),展示的值和寫(xiě)入的形式不一樣,但是讀取到的值卻是沒(méi)有問(wèn)題的。這個(gè)問(wèn)題可以從官方的文檔規(guī)范中找到答案:

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

Mongodb中是將uuid其作為二進(jìn)制類型存儲(chǔ)的,用一個(gè)subtype來(lái)標(biāo)記其類型為uuid,在對(duì)C#,java,python提供的驅(qū)動(dòng)中,默認(rèn)是將其子類型映射了為3(Legacy UUID),這個(gè)在客戶端工具中也是有所展示的:

實(shí)際上,大多數(shù)客戶端工具也是能支持將Legacy UUID展示成我們寫(xiě)入時(shí)候的那個(gè)樣子。

   

解決方法

雖然這個(gè)不影響程序的功能,但由于第一眼看到的字符串不是寫(xiě)入的格式,很多時(shí)候是影響我們調(diào)試程序的。一個(gè)較好的解決方法是默認(rèn)將以標(biāo)準(zhǔn)的UUID格式存儲(chǔ),只需要設(shè)置一個(gè)全局配置即可:

 BsonDefaults.GuidRepresentation = GuidRepresentation.Standard; 

這樣就方便多了:

參考文章:

MongoDB Best Practices for UUID Data

總結(jié)

以上就是Mongodb中關(guān)于GUID的顯示問(wèn)題的詳細(xì)內(nèi)容,更多關(guān)于Mongodb中GUID顯示問(wèn)題的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Mysql聯(lián)合查詢UNION和Order by同時(shí)使用報(bào)錯(cuò)問(wèn)題的解決辦法

    Mysql聯(lián)合查詢UNION和Order by同時(shí)使用報(bào)錯(cuò)問(wèn)題的解決辦法

    很多朋友剛使用聯(lián)合查詢UNION的時(shí)候常常會(huì)理所當(dāng)然的將聯(lián)合查詢理解為把沒(méi)一個(gè)子查詢的結(jié)果集組合成一個(gè)大的結(jié)果集
    2014-04-04
  • MySQL 數(shù)據(jù)查重、去重的實(shí)現(xiàn)語(yǔ)句

    MySQL 數(shù)據(jù)查重、去重的實(shí)現(xiàn)語(yǔ)句

    這篇文章主要介紹了MySQL 數(shù)據(jù)查重、去重的實(shí)現(xiàn)語(yǔ)句,幫助大家更好的理解和學(xué)習(xí)MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2020-09-09
  • 使用MySQL的geometry類型處理經(jīng)緯度距離問(wèn)題的方法

    使用MySQL的geometry類型處理經(jīng)緯度距離問(wèn)題的方法

    這篇文章主要介紹了使用MySQL的geometry類型處理經(jīng)緯度距離問(wèn)題的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • MySQL表結(jié)構(gòu)變更你不可不知的Metadata Lock詳解

    MySQL表結(jié)構(gòu)變更你不可不知的Metadata Lock詳解

    這篇文章主要給大家介紹了關(guān)于MySQL表結(jié)構(gòu)變更你不可不知的Metadata Lock的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • 詳解sql中的參照完整性(一對(duì)一,一對(duì)多,多對(duì)多)

    詳解sql中的參照完整性(一對(duì)一,一對(duì)多,多對(duì)多)

    這篇文章主要介紹了sql中的參照完整性,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Ubuntu安裝Mysql+啟用遠(yuǎn)程連接的完整過(guò)程

    Ubuntu安裝Mysql+啟用遠(yuǎn)程連接的完整過(guò)程

    這篇文章主要介紹了Ubuntu如何安裝Mysql+啟用遠(yuǎn)程連接,用ssh客戶端或者云服務(wù)器廠家提供的網(wǎng)頁(yè)版控制臺(tái)都行,只要你能連上服務(wù)器就行,需要的朋友可以參考下
    2022-06-06
  • MySQL 8.0 可以操作 JSON 了

    MySQL 8.0 可以操作 JSON 了

    這篇文章主要介紹MySQL 8.0 如何操作 JSON ,經(jīng)過(guò)漫長(zhǎng)的測(cè)試,即將整體遷移至Mysql8.0; Mysql8.0 對(duì)于Json操作新增/優(yōu)化了很多相關(guān)Json的API操作; 閱讀了一下官方文檔,雖然絕大多數(shù)的JSON操作都是應(yīng)用層完成,下面來(lái)看文章的詳細(xì)內(nèi)容吧
    2021-10-10
  • Docker Dockerfile構(gòu)建MySQL并初始化數(shù)據(jù)方式

    Docker Dockerfile構(gòu)建MySQL并初始化數(shù)據(jù)方式

    這篇文章主要介紹了Docker Dockerfile構(gòu)建MySQL并初始化數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • MySQL如何創(chuàng)建視圖

    MySQL如何創(chuàng)建視圖

    這篇文章主要介紹了MySQL如何創(chuàng)建視圖,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-08-08
  • Mysql的Explain使用方式及索引總結(jié)

    Mysql的Explain使用方式及索引總結(jié)

    這篇文章主要介紹了Mysql的Explain使用方式及索引總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12

最新評(píng)論