详述MongoDB数据类型
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,这篇文章主要为大家详细介绍了MongoDB数据类型,文中示例介绍的非常详细,图文详解容易学习,非常适合初学者入门,感兴趣的小伙伴们可以参考一下。MongoDB的文档其实和JSON很类似,与JavaSc
千家信息网最后更新 2025年01月23日详述MongoDB数据类型
这篇文章主要为大家详细介绍了MongoDB数据类型,文中示例介绍的非常详细,图文详解容易学习,非常适合初学者入门,感兴趣的小伙伴们可以参考一下。
MongoDB的文档其实和JSON很类似,与JavaScript的对象概念也很像。但是MongoDB的数据类型更加丰富。下面我们一一介绍MongoDB的数据类型。
数据类型 | 描述 | 举例 |
null | 表示空值或者未定义的对象 | {“x”:null} |
布尔值 | 真或者假:true或者false | {“x”:true} |
32位整数 | 32位整数。shell是不支持该类型的,shell中默认会转换成64位浮点数 | |
64位整数 | 64位整数。shell是不支持该类型的,shell中默认会转换成64位浮点数 | |
64位浮点数 | 64位浮点数。shell中的数字就是这一种类型 | {“x”:3.14,“y”:3} |
字符串 | UTF-8字符串 | {“foo”:“bar”} |
符号 | shell不支持,shell会将数据库中的符号类型的数据自动转换成字符串 | |
对象id | 文档的12字节的唯一id | {“id”: ObjectId()} |
日期 | 从标准纪元开始的毫秒数 | {“date”:new Date()} |
正则表达式 | 文档中可以包含正则表达式,遵循JavaScript的语法 | {“foo”:/foobar/i} |
代码 | 文档中可以包含JavaScript代码 | {“x”:function() {}} |
二进制数据 | 任意字节的二进制串组成,shell不支持 | |
最大值 | 表示可能的最大值,shell不支持 | |
最小值 | 表示可能的最小值,shell不支持 | |
未定义 | undefined | {“x”:undefined} |
数组 | 值的集合或者列表 | {“arr”: [“a”,“b”]} |
内嵌文档 | 文档可以作为文档中某个key的value | {“x”:{“foo”:“bar”}} |
上面的大部分类型都是显而易见的,但是有必要详细解释一下对象id类型。我们上面说了,对象id类型是一个12字节的唯一id。每个字节2位16进制数,因此整个id类型是一个24位的字符串。其结构如下表所示:
前面四个字节代表从标准纪元开始的时间戳,以秒为单位。
- 接下来三个字节表示机器号,一般是机器名的hash值。这可以保证不同机器产生的id不会冲突。
- 接下来两个字节表示进程id号,保证统一机器不同建成产生的id不冲突
- 最后三个是计数器的计数值,对于任意一秒钟,可以产生2^24个数
我们之前提到过,如果不在插入的时候手动的添加_id键,那么系统会自动添加一个。尽管MongoDB的id类型被设计成轻量级的,但是这样还是会不好。毕竟服务器创建这个还是会有开销的。因此,这个工作一般会放到客户端来做。
参考书籍
《MongoDB:The definitive guide》
以上就是MongoDB数据类型的详细介绍,内容较为全面,而且我也相信有相当的一些工具可能是我们日常工作可能会见到或用到的。通过这篇文章,希望你能收获更多。
类型
数据
字节
文档
支持
对象
字符
字符串
整数
机器
点数
不同
最大
最小
接下来
三个
二进制
代码
就是
最大值
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
建立专病数据库的技术路线
网络安全基本因素包括以下
数据库查询分析器重命名
python查询数据库返回数据
用户信息安全管理软件开发
宝山区专业性软件开发经验丰富
PGDD数据库使用说明
宜丰天气预报软件开发
网络安全的好的一面宣传片
c 创建数据库的代码
长春盘古网络技术岗
数据库连接提示用户过期
购买阿里云ecs服务器
淅川软件开发技术
软件开发app岗位职责
联想服务器如何做raid
c 获取连接数据库的ip
西安网络安全法实施日
湖北电脑软件开发价格表
数据库查找这个库
网络安全证书怎么升级
北京火星蚁互联网科技
服务器一兆带宽多少钱
税务网络安全实务测试大比武
网络安全莫言
惠普服务器本机管理员密码
邹平模具管理软件开发公司
成都赛腾软件开发
轰炸服务器
js获取数据库的值