如何解决Mongodb中关于GUID的显示问题
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章主要讲解了如何解决Mongodb中关于GUID的显示问题,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。发现问题最近将一个程序的存储迁移到了Mongodb,发现了一
千家信息网最后更新 2025年02月23日如何解决Mongodb中关于GUID的显示问题
这篇文章主要讲解了如何解决Mongodb中关于GUID的显示问题,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
发现问题
最近将一个程序的存储迁移到了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中关于GUID的显示问题有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。
问题
客户
客户端
工具
程序
类型
内容
存储
中关
官方
文档
方法
时候
格式
学习
影响
二进制
全局
兴趣
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全警示漫画图片
数据库增加交换内存
linux设置时钟服务器
xampp服务器搭建安全
必选排斥关系数据库实现
银川网络安全知识竞赛
网络安全的资料及图片
银行保险网络安全领导小组
天津智慧食堂一码通软件开发定制
网络技术与信息工程一样不
服务器没风扇
一个数据库可以包含
可不可以做一个打分的数据库
搞软件开发应该学什么专业
安司源服务器端破解
数据库命名规定
学生网络安全问题的研究价值
政府网络安全宣传周的总结
西部管道网络安全
苹果如何检查手机网络安全
魔法觉醒服务器怎么看
软件开发与创新5000字论文
教学管理系统数据库登录表
互联网科技公司都有哪些
关于加强网络安全工作的报告
oracle的数据库组成
无法找到ftp服务器
第四季度网络安全总结报告
阅览证可以使用数据库资源吗
统计学问卷以及数据库