zoukankan      html  css  js  c++  java
  • 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():删除集合

    待续~~~~~~~~~

  • 相关阅读:
    构建之法作业要求 20160922
    构建之法作业截止 20160908
    作业成绩 20160901
    动态范围理解
    解像力理解以及单位换算;
    QT:基本知识(一);
    qml: 截图(单窗口);
    (转载)python: getopt的使用;
    python: with的使用;
    qml: 自定义输入框
  • 原文地址:https://www.cnblogs.com/fanxiaojun/p/4602032.html
Copyright © 2011-2022 走看看