MongoDB 入门学习

---恢复内容开始---

学习网址:http://www.yiibai.com/mongodb/mongodb_create_database.html

1,在MongoDB 官网:http://www.mongodb.org/downloads 上下载对应系统的版本,安装好MongoDB.

2,进入MongoDB 的安装目录的Bin 目录下,有如下几个exe文件,每个文件都有其对应的用途:

对应Exe文件的作用如下:

mongo 客户端程序,连接MongoDB
mongod 服务端程序,启动MongoDB
mongodump 备份程序
mongoexport 数据导出程序
mongofiles GridFS工具,内建的分布式文件系统
mongoimport 数据导入程序
mongorestore 数据恢复程序
mongos 数据分片程序,支持数据的横向扩展
mongostat 监视程序

 

3,启动MongoDB 的服务,执行:mongod.exe ,会打开27017 的端口,可以在浏览器下打开http://localhost:27017/网站,说明MongoDB 的服务器已经启动成功,同样也可以在后台看到启动成功信息。

4,打开MongoDB的命令行工具,在命令行下执行:mongo.exe,会出现MongoDB 的版本信息,并且连接到testDB.

5,可以执行MongoDB 的相应的命令。

常用命令:

1>,db.help():查看MongoDB 的所有的命令,并且可以查看命令的使用说明。

2>,show dbs:查看DB的清单。

3>,db:查看当前DB的name

4>,user DBName:切换到指定的DB(如果对应的DB不存在,则创建一个新的DB)。

5>,db.dropDatabase():删除当前DB

6>,show collections :查看DB的collections 清单.

7>,db.createCollection("mycollection"):

创建一个Name为:mycollection 的集合

8>,db.mycollection .insert({"name" : "yiibai"}):插入记录,在MongoDB 也叫做插入文档。

9>,db.mycollection .find():查找对应collection 的所有的数据,其中:mycollection 就是对应的Collection Name,相当于SQL的:

     select * from TableName;

10>,db.mycollection.find().pretty():这是格式化显示查询的结果

  10.1,要查询文件的一些条件的基础上,可以使用下面的操作

操作语法例子RDBMS 等同
Equality {<key>:<value>} db.mycol.find({"by":"tutorials point"}).pretty() where by = 'tutorials point'
Less Than {<key>:{$lt:<value>}} db.mycol.find({"likes":{$lt:50}}).pretty() where likes < 50
Less Than Equals {<key>:{$lte:<value>}} db.mycol.find({"likes":{$lte:50}}).pretty() where likes <= 50
Greater Than {<key>:{$gt:<value>}} db.mycol.find({"likes":{$gt:50}}).pretty() where likes > 50
Greater Than Equals {<key>:{$gte:<value>}} db.mycol.find({"likes":{$gte:50}}).pretty() where likes >= 50
Not Equals {<key>:{$ne:<value>}} db.mycol.find({"likes":{$ne:50}}).pretty() where likes != 50

 10.2,And 在MongoDB 中的应用:db.mycol.find({key1:value1, key2:value2}).pretty()

    eg:db.mycollection .find({"by":"tutorials point","title": "MongoDB Overview"}).pretty():相当于:where by='tutorials point'   AND title='MongoDB Overview'

10.3,OR 在MongDB 中的应用:

db.mycollection .find( { $or: [ {key1: value1}, {key2:value2} ] } ).pretty()

eg:

db.mycollection .find({$or:[{"by":"yiibai"},{"title": "MongoDB Overview"}]}).pretty():相当于:Where by='yiibai' or title='

MongoDB Overview'

10.4,Or 与And 的联合使用:

db.mycollection .find("likes": {$gt:10}, $or: [{"by": "yiibai"}, {"title": "MongoDB Overview"}] }).pretty()
相当于:where likes>10 AND (by = 'yiibai' OR title = 'MongoDB Overview')

 

11>,db.mycollection .update(SELECTIOIN_CRITERIA, UPDATED_DATA):更新文档,第一个参数是更新的条件,第二个参数是更新的字段

eg:db.mycollection .update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}})

相当于:update tablename set title='New MongoDB Tutorial' where title='MongoDB Overview'

MongoDB默认将只更新单一的文件,来更新多个你需要设置参数置'multi' 为true

db.mycollection.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}},{multi:true})

MongoDB Save() 方法

 save() 方法替换现有的文档和通过新的文档 save() 方法

db.mycollection.save( { "_id" : ObjectId(5983548781331adf45ec7), "title":"Yiibai New Topic", "by":"Yiibai" } )

12>,db.mycollection.remove(DELLETION_CRITTERIA):删除一条记录

eg:

db.mycollection.remove({'title':'MongoDB Overview'})

db.mycol.remove():不加条件,则删除该集合下的所有的文档,相当于SQL:truncate table

11>,db.mycollection.drop():删除集合

待续~~~~~~~~~

posted @ 2015-06-26 12:47  Tom Fan  阅读(220)  评论(0编辑  收藏  举报