首页 > 代码库 > mongodb数据类型

mongodb数据类型

随着web2.0的时代到来,关系型数据库在越来越多的场景下暴漏出许多问题,为了解决这类问题,NoSql数据库应用而生,今天就来说说当下比较主流的NoSql数据库mongodb。

  1. 基本数据类型       mongodb类似于json,在概念上javaScript类似。json是数据的一种简单表示方法,包含6种数据类型,分别是:null, 布尔,数字,字符串,数组和对象。没有时间数据类型,在操作时间上就会很麻烦。而mongodb在保留json基本的键值对的特性基础上,添加了其它的数据类型。

数据类型文档的表示方式                        说   明                       
null{"x":null}null表示空值或者不存在的字符串
布尔{“x”:true}布尔有两个值true或false
32位整数 在Shell中这个类型是不可用的,因为javaScript只支持64位浮点数,所有32位整数会自动转换。
64位整数 在Shell中也不支持这个类型,Shell会使用一个特殊的内嵌文档来显示64位整数
64位浮点数{"x":12.6} {"y":12}shell中的数字都是这种类型
字符串{"x":"personaliinfo"}UTF-8字符串都可以表示为字符串类型的数据
符号 Shell不支持这种类型。Shell将数据库中的符号类型转换为字符串
对象Id{"x":objectId()}对象id是文档的12字节的唯一ID
日期{"x":newDate()}日期类型存储的是从标准纪元开始的毫秒数,不存储时区
正则表达式{"x":/personaliinfo/i}文档中可以包含正则表达式,采用正则表达式的语法
代码{"x":function(){...}}文档中可以包含JavaScript代码
二进制数据 二进制数据可以由任意字节的串组成,在Shell中无法使用
最大值 BSON包含一个特殊类型,表示可能的最大值,Shell中没有
最小值 BSON包含一个特殊类型,表示可能的最小值,Shell中没有
未定义{"x":undefined}文档中可以使用未定义类型(javascript中null和undefined是不同的类型)
数组{"x"["a","b","c"]}值得集合或者列表可以表示成数组
内嵌文档{"x":{"name":"h"}}文档中可以嵌入其它文档

 

mongodb数据类型