当前位置:Gxlcms > 数据库问题 > mongoDB入门

mongoDB入门

时间:2021-07-01 10:21:17 帮助过:3人阅读

{"course1":"MongoDB","course2":"hadoop"}

说明:文档是有序的,键是区分大小写的

集合

集合就是一组文档。

集合是无模式的,即:一个集合中的文档可以是各式各样的例如:

集合代码:

1 {"course1":"hadoop","course2":"hive"}  
2 {"studentName":"小红"}  

 数据库

MongoDB中多个集合组成数据库。一个MongoDB实例可以承载多个数据库,它们之间可视为完全独立的。每个数据库有自己的权限控制

技术分享

6.关系型数据库与MongoDB逻辑结构对比

对于习惯了关系型数据库的朋友们,我将MongoDB与关系型数据库的逻辑结构进行了对比。

MongoDB 关系型数据库
文档(document) 行(row)
集合(collection) 表(table)
数据库(database) 数据库(database)

7.测试MongoDB

 1 > show dbs   //显示数据库信息  
 2 local   (empty)  
 3 > db  //查看当前链接到那个数据库  
 4 test  
 5 > user test  //使用test数据库  
 6 Fri Mar 28 10:20:14 SyntaxError: missing ; before statement (shell):1  
 7 > use test  
 8 switched to db test  
 9 > post = {"title":"love","content":"I love you"}  //定义文档  
10 { "title" : "love", "content" : "I love you" }  
11 > db  
12 test  
13 > db.test.blog.insert(post)  //将文档插入到集合中  
14 > db.test.blog.find()  //查询集合  
15 { "_id" : ObjectId("5334dd149b7a445ea2166559"), "title" : "love", "content" : "I  
16  love you" }  
17 > post = {"job":"java","city":"wuhan"}  
18 { "job" : "java", "city" : "wuhan" }  
19 > db.test.blog.insert(post)  
20 > db.test.blog.find()  
21 { "_id" : ObjectId("5334dd149b7a445ea2166559"), "title" : "love", "content" : "I  
22  love you" }  
23 { "_id" : ObjectId("5334dd669b7a445ea216655a"), "job" : "java", "city" : "wuhan"  
24  }  
25 >  

 8.MongoDB中的数据类型

 null

1 {"x":null}

布尔

1 {"x":true}

32位整数

64位整数

64位浮点数

字符串

1 {"x":"hi world"}

对象id

日期

1 {"x":new Date()} 

正则表达式

1 {"x":/foobar/i}

函数

1 {"x":function(){//......}}  

二进制数据

可以由任意字节的串组成

最大值

最小值

未定义

1 {"x":undefined}  

数组

1 {"x":["a","b","c"]} 

内嵌文档

1 {"x":{"foo":"bar"}} 

9._id和ObjectId

 Mongodb中存储的文档必须有一个“_id”键。这个键的值可以是任何类型的,默认是ObjectId对象。在集合中,每个文档都有唯一的“_id”,来确保集合里面每个文档都能被唯一标示。

一个BSON ObjectID是12字节的值,包含了4字节的时间戳(纪元以来的秒数),3字节机器id,2字节进程id,和3字节计数值。注意不同于BSON中的其他字段,时间戳和计数值字段必须存储为big endian。这是由于会对它们按字节比较,我们希望大多数情况下保证是升序。它的格式:

0 1 2 3 4 5 6 7 8 9 10 11
time machine pid inc

 转载:http://zc985552943.iteye.com/blog/2037887

mongoDB入门

标签:

人气教程排行