@52fhy
2016-01-24T21:44:57.000000Z
字数 2004
阅读 477
mongo
关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合”就是对应关系数据库中的“表”,“文档”对应“行”。
上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了,不过这里有两点注意:
1)根据业界规则,偶数为“稳定版”(如:1.6.X,1.8.X),奇数为“开发版”(如:1.7.X,1.9.X),这两个版本的区别相信大家都知道吧。
2)32bit的mongodb最大只能存放2G的数据,64bit就没有限制。
我这里就下载"32bit“,ok,下载之后我就放到D盘,改下文件夹名字为mongodb。
解压压缩包或者安装到mongodb目录。
启动之前,我们要给mongodb指定一个文件夹,这里取名为db,用来存放mongodb的数据。
最终目录结构:
D:.
├─mongodb
│ ├─bin
│ └─db
│ └─_tmp
cmd里进入到mongodb/bin目录,然后运行mongod开启命令,同时用--dbpath
指定数据存放地点为“db”文件夹。
初始化数据库
D:\Projects\mongodb\bin>mongod --dbpath=D:\Projects\mongodb\db
最后要看下是否开启成功:mongodb采用27017端口,那么我们就在浏览器里面键入http://localhost:27017/
,看到有提示内容即可。
由于是开篇,就大概的说下基本的“增删查改“,我们再开一个cmd,之前的命令行窗口不要关闭(关闭连接就断了)。输入mongo命令打开shell,其实这个shell就是mongodb的客户端,同时也是一个js的编译器
(支持js语法)。
打开数据库,默认是test
数据库
D:\Projects\mongodb\bin>mongo
connecting to: test
下面开始增删查改:
好,数据库有了,下一步就是集合,这里就取集合名为“person”,要注意的就是文档是一个json的扩展(Bson)形式。
> db.person.insert({"name":"yjc","age":22})
WriteResult({ "nInserted" : 1 })
再新增一条
> db.person.insert({"name":"rzc","age":22})
WriteResult({ "nInserted" : 1 })
1)“_id": 这个字段是数据库默认给我们加的GUID,目的就是保证数据的唯一性。
2)严格的按照Bson的形式书写文档,不过也没关系,错误提示还是很强大的。
查询所有
> db.person.find()
{ "_id" : ObjectId("558fd39d02d9b5bcf004aaf5"), "name" : "yjc", "age" : 22 }
{ "_id" : ObjectId("558fd3c602d9b5bcf004aaf6"), "name" : "rzc", "age" : 22 }
> db.person.find({"name":"yjc"})
{ "_id" : ObjectId("558fd39d02d9b5bcf004aaf5"), "name" : "yjc", "age" : 22 }
update方法的第一个参数为“查找的条件”,第二个参数为“更新的值”。
> db.person.update({"name":"rzc"},{"name" : "rzc2", "age" : 20})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.person.find({"name":"rzc"})
> db.person.find({"name":"rzc2"})
{ "_id" : ObjectId("558fd3c602d9b5bcf004aaf6"), "name" : "rzc2", "age" : 20 }
remove中如果不带参数将删除所有数据,呵呵,很危险的操作,在mongodb中是一个不可撤回的操作,三思而后行。
> db.person.remove({"name":"rzc2"})
WriteResult({ "nRemoved" : 1 })
> db.person.find()
{ "_id" : ObjectId("558fd39d02d9b5bcf004aaf5"), "name" : "yjc", "age" : 22 }
> db.person.count()
1
参考:8天学通MongoDB