MongoDB——基本规则、数据类型

数据库建立基本规则

序号 注意事项
1 符合UTF-8标准的字符串
2 不能是空字符串""
3 不得含有" "(空格) 、.、$、/、\、\0(空字符)
4 区分大小写,建议全部小写
5 名称最多为64字节
6 不得使用保留的数据库名,如admin、local、config、test

集合名称定义规则

序号 注意事项
1 符合UTF-8标准的字符串
2 不能是空字符串,如""
3 不得含有$、\0(空字符)
4 不能以"system."开头,这是为系统集合保留的前缀
5 用"."来组织子接,如book.name

文档的键的定义规则

序号 注意事项
1 符合UTF-8标准的字符串
2 不能包含\0字符(空字符),这个字符表示键的结束
3 ".“和”$"是被保留的,只能在特定环境下用
4 区分类型(如字符串、整数等),同时也区分大小写
5 键不能重复,在一条文档里其唯一的作用

文档值数据类型

虽然MongoDB在使用时无须直接定义数据存储结构,也无须明确指定文档的数据类型,但是它也存在数据类型概念,在实际业务环境下必须能正确区分存储数据的类型。

序号 数据类型 描述 举例
1 null 标识空值或未定义的对象 {"otherbook":null}
2 布尔值 真或假(true或者false) {"allowing":true}
3 32位整数 shell不支持该类型,默认会转换成64位浮点数,也可以使用NumerInt类 {"number":NumberInt("3")}
4 64位整数 shell不支持该类型,默认会转换成64位浮点数,也可以使用NumberLong类 {"longnumber":NumberLnog("3")}
5 64位浮点数 shell中的数字就是这一种类型 {"price":23.5}
6 字符串 UTF-8字符串 {"bookname":"资治通鉴"}
7 符号 shell不支持。它会将数据库中的符号类型的数据自动转换成字符串
8 对象id 文档的12字节的唯一id,保证一条文档记录的唯一性。可以在服务器端自动生成,也可以在代码端生成,允许程序员自行指定id值 {"id":ObjectId()}
9 日期 从标准纪元开始的毫秒数 {"saledate":new Date()}
10 正则表达式 文档中可以包含正则表达式,遵循JavaScript语法 "foo":/foobar/i
11 代码 文档中可以包含JavaScript代码 {"nodeprocess":function(){}}
12 unefined 未定义 {Explain":undefined}
13 数组 值的集合或者列表 {"books":["资治通鉴","说文解字"]}
14 内嵌文档 JSON、XML等文档本身 {bookname:"资治通鉴",bookprice:33.2,adddate:2017-10-1,allow:true,baseinf:{ISBN:13223234,press:"清华大学出版社"}}

猜你喜欢

转载自blog.csdn.net/cold___play/article/details/121361624