MongoDB简单使用

关于MongoDB的背景和优点就不说了。mongo属于非关系型数据库,即NoSQL,可以简单理解为用键值对存储,当然特性有很多,对于初学者,理解这点和SQL的存储方式不同就行。

使用步骤

下载略过(本文是5.x版本),在盘根目录下新建data/db文件夹,作为存储空间。
进入解压后的bin文件夹,执行命令mongod --logpath "xxx" --dbpath "xxx" --install
第一次启动,要指定日志路径、存储路径等,关键的就这两个。
后面就不用加参数了,直接mongod即可启动服务。
启动成功后在服务中可以看到(windows)

服务

进入MongoDB shell

这个shell还是用js写的,可以定义变量。
还是bin目录,mongo即可进入

基本使用

建库 use xxx
查看当前库名 db
查看所有库名 show dbs
删除当前库 db.dropDatabase()
删除集合 db.collection.drop()

不需要新建表(MongoDB中叫做集合)
插入的数据叫做文档
插入数据 db.collection.insert(doc)
save也是插入,但略有不同,如果指定了_id,save类似于set xxx where id=_id,不指定两者是一样的
mongo命令行中可以定义变量 doc=(content)

更新数据
save是一种,更多是使用update
db.collection.update( criteria, objNew, upsert?, multi? )
criteria : update的查询条件,类似sql update查询内where后面的。
objNew : update的对象和一些更新的操作符(如,inc...)等,也可以理解为sql update查询内set后面的
upsert : 这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : mongodb默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。

删除数据
db.collection.remove( <query>, <justOne> )
2.6版本后使用
db.collection.remove( <query>, { justOne: <boolean>, writeConcern: <document> } )
query :(可选)删除的文档的条件。
justOne : (可选)如果设为 true 或 1,则只删除一个文档。
writeConcern :(可选)抛出异常的级别。
测试了一下,5.0.5版本,两个都能用
删除所有 db.col.remove({}) 类似truncate

查看集合内容 db.collection.find()
美化内容 find().pretty()
findOne() 只返回符合条件的第一个文档

简单的条件设置
小于 $lt
大于 $gt
小等于 $lte
大等于 $gte
不等于 $ne
用法{ key: { $lt: value } },key < value
and在对象里面加键值对即可
or
db.col.find( { $or: [ {key1: value1}, {key2:value2} ] } )
or条件在数组里写

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • mongoDB 命令 在Linux下使用mongo进入MongoDB命令行 mongo 创建和使用数据库 > us...
    白红薯粉阅读 21,885评论 0 0
  • 知识点:美化输出:db.stu.find().pretty() $project:修改输入文档的结构。可以用来重命...
    胖虎很可爱阅读 755评论 0 1
  • 1.NoSQL 介绍 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是 SQL”, 它指的...
    ceido阅读 245评论 0 1
  • MongoDB文档 MongoDB 概念解析 不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基...
    birdflying阅读 2,009评论 0 27
  • MongoDB旨在为web应用提供可扩展的高性能数据存储方案MongoDB将数据存储为一个文档,数据结构由键值对(...
    大Fy阅读 407评论 0 2