MongoDB初略了解

2014-11-24 18:44:09 · 作者: · 浏览: 0

写在前面


PHP对应的MongoDB等熟悉原生态语言之后,再了解。


1.启动:


安装好了mongoDB之后,并将其加入自动随开机启动后,就可以对MongoDB进行测试并学习了。打开客户端。开始>>运行>>cmd。切换到MongoDB的安装目录,运行mongo.exe,默认是运行在27017端口,然后是MongoDB/data 下进行数据存储。




2.关于MongoDB的几个概念


在学习之前我们就知道MongoDB是NoSql数据库,也就是非关系型数据库,那不存在SQL,也就没有表、行和列了。那它是如何存储呢?是文档存储。那么文档就有几个概念了。


文档>>集合>>数据库


一. 文档MongoDB中最小单位,也是MongoDB的核心,相当于MySQL数据库表中的一条记录(一行),多个键以及其关联的值有序的放置在一起就是一个文档,所以,文档是采用键值对的形式存放的,采用json格式{ “var1”:"value1","var2":"value2",......} 。


下面就是一个文档:








二. 集合就是一组文档,如果说文档类似于Mysql等关系型数据库中的一行(记录),那么集合就相当于关系型数据库中的表了、


集合是无序的,可以存储任意类型(整型,字符型)的文档,集合的命名是非空的字符串,不能包含“$”,不能用"system"开头。


三. 数据库


多个文档组成集合,多个集合就组成了数据库。一个MongoDB实例可以承载多个数据库,他们之间可视为完全独立,每个数据库都有独立的权限控制,那么数据库的命名:


3.MongoDB的shell


提到shell,,或许并不陌生,这让我想到了linux系统里的shell,就是一组命令编程,通过代码命令,直接在命令提示符下运行,那么在MongoDB中也有shell,它是基于java script的shell脚本,顾名思义,是可以运行java script代码的,可以对MongoDB进行系统的管理,检查运行实例,亦或做其他尝试,所以,单纯讲MongoDB,而不与PHP进行连接的话,shell是核心,至关重要。因为对MongoDB数据库的操作都是shell命令。


既然MongoDB是基于java script的shell脚本的,我们来看看几个java script代码的运行。





那么,也可以自定义函数,进行操作,和java script里面一样。




所以,在MongoDB中对java script有着非常好的支持。


4.MongoDB的shell对数据库的基本操作


既然MongoDB中的shell脚本如此强大,那么就像是MySQL在命令提示符下,也可以进行对数据库的增删改查操作,MongoDB也不例外。


1 . 创建


在MongoDB中插入一个文档到集合中,也就是插入一行记录到表中是一样的道理。首先是选择数据库,在选择一个集合,最后将一个文档插入



在MongoDB中,use database 来选择数据库,当不存在时,就自动创建一个数据库。


db.blog.insert( 文档);来插入一个文档,当然也可以直接插进去,不用post这种形式。


db.blog.find();查找集合里面的全部文档数据;


db.blog.find0ne();查找最近的一个文档。


db.blog.update({条件},内容);更新文档。


db.blog.remove();删除文档。


所以很重要的思想是:先use(选择)库,在选择集合进行的操作,选择集合和对应的操作是一起的。