MongoDB的基本操作命令

作者: 京少 | 来源:发表于2017-06-23 16:58 被阅读49次

    启动MongoDB服务

    MongoDB官网下载安装,配置环境,在/bin同级目录下创建目录 /data/db,命令./bin/mongod即可启动MongoDB服务(由于我没有配置全局环境变量,所以需要在后边加上/data/db文件夹的全局路径)。

    打开新的窗口,执行mongo命令即可进入MongoDB的命令行模式。

    基本操作命令

    show dbs // 列出所有数据库 。

    use test // 创建及切换数据库,此处直接创建test数据库。

    插入及查询命令

    db.user.insert({name:'lujing'}) // 没有user表,则系统会默认创建;db.表名.insert()插入数据库,insert()函数参数为JSON字符串,可带多个参数。

    db.user.find() // 查询数据库,查询参数为JSON字符串,参数为空表示查询所有。'_id' 字段为Mongodb数据库默认生成的全局唯一的字段;"_id"也可自己定义,但不能重复,不建议自己创建_id字段。


    show.collections() // 列出所有当前库下的所有表。

    db.user.count() // 统计表记录数量。


    更新命令

    db.user.update({name:'lujing'},{age:18}) // 更新操作,update()函数至少接收两个参数,第一个为更新条件,第二个参数为更新内容;但是看到更新之后发现age属性更新成功,但是name属性被覆盖掉了,所以此处我们使用 $set更新操作符,只会更新存操作符后边的对应字段,不存在的保持不变。

    db.user.update({name:'lisi'},{age:99},true) // 当有 更新时不存在的则插入 的需求是,则可以将第三个参数设置为true。如下图,在没有设置第三个参数时试图将{name='lisi'}的那条记录的age属性更新为99,但是没有一条记录收到影响;当添加第三个参数后,则Upsert成功。


    db.user.update({name:'金刚狼'},{name:'钢铁侠'},false,true) // 试图将{name=金刚狼}的记录改为钢铁侠,但由于MongoDB自身安全机制的限制,只更新了其中的一条;这是需要用到第四个进行批量更新。同样也由于MongoDB的安全机制的限制,在批量更新是必须使用$set操作符才能更新成功。

    删除

    db.user.remove() // remve操作不允许直接删除一张表,‘ERROR:remove needs a query’,必须输入删除条件。

    db.user.drop() //  可以直接删除一张表

    db.user.remove({name:'lisi'});  // 删除{name:'lisi'}的记录,不同于update操作,可直接删除多条记录

    db.user.find().skip(2).limit(2).sort({age:1})  // 再来一个综合查询:skip(2)及查询的结果集取消前两个;limit(2)及只需要返回两条记录,skip()和limit()函数结合可用于分页查询;sort({age:1})代表age字段正向排序

    各位看官有问题可在下方评论区留言。

    相关文章

      网友评论

        本文标题:MongoDB的基本操作命令

        本文链接:https://www.haomeiwen.com/subject/ofmccxtx.html