Loading

MongoDB的CURD命令

 1.启动客户端

   在MongDB服务成功启动的情况下,打开cmd,在MongDB的bin文件目录下执行MongDB命令

   可以看到MongDB版本号3.0.7与默认连接的数据库test。test数据库是系统默认将要创建的,因为此时没不存在此数据库,或者说它现在还只存在内存中,并没有创建在物理磁盘上。

   创建数据库,输入命令“use dmo”

  use命令用来切换当前数据库,如果不存在该数据库,就会先创建一个

2.插入数据

  创建collection并插入数据,在传统关系型数据库中创建完了数据库中就创建表,但是在MongoDB中没有“表”的概念,与其对应的一个概念是集合,即collection

 在cmd窗口如下以下命令

db.user.insert({'name':'狗娃','age':'11'})

  此命令是向user集合中插入1条数据,如果集合user不存在,就先创建一个再插入。参数以JSON格式传入。

 此命令证明插入成功。

我们再插入几条数据即便后面测试使用

3.查询数据

  1.显示所有数据库

show dbs

 此命令是显示所有数据库

   2.查询当前数据库中所有集合

show collections

 此命令显示当前数据库下的所有集合

   3.查询某个集合中所有文档

db.user.find()

 此命令显示user集合下的所有文档

  我们可以看到系统给每条记录创建了一个唯一主键ID,这个主键ID不是GuId类型,而是特有算法生成的唯一标识。

  我们也可以在find()方法内添加条件

  4.查询指定字段的数据

db.user.distinct('name')

 

   5.查询数据的条目数

db.user.find({'age':11}).cout()

 

  6.分页查询

db.user.find().skip(1).limit(1)

     skip:跳过几条记录

     limit:查询几条记录

  7.查询指定记录

db.user.find({'name':{$in:['狗娃','铁蛋']}})

   in:查询name符合in中内容

  8.排序查询

db.user.find().sort({'age':1})
db.user.find().sort({'age':-1})

   第一条为正序:参数为“1”

  第二条为倒序:参数为“-1”

   9.关系运算条件查询

查询年龄小于12的

db.user.find({'age':{$lt:12}})

  查询年龄大于12的

db.user.find({'age':{$gt:12}})

  查询年龄大于等于11的

db.user.find('age',{$gte:11})

  查询年龄小于等于18的

db.user.find('age':{$lte:18})

查询年龄不等于11的

db.user.find('age':{$ne:11})

  关系运算条件也可以使用另一种方式

db.user.find('this.age>=18',{'name':'1'})

上面代码是查询年龄大于18数据的姓名

同理

db.user.find('this.age<18')
db.user.find('this.age<=11')
db.user.find('this.age>11')

 10.查询一条信息

db.user.findOne({'age':11})

   上面代码是查询符合年龄为11的一条信息

 

4.更新数据

  1.$set

    更新数据,假设将姓名为“狗娃”的age属性改为”18“,可在cmd窗口输入以下命令

db.user.update({'name':'狗娃'},{'$set':{'age':18}},upsert=true,multi=false)

在这里用到了update方法,各参数所代表的含义如下:

    参数1:插入的条件

    参数2:更新的字段

    参数3:是否允许如果不存在则插入

    参数4:是否允许修改多条记录

然后查询下修改后的数据

 2.$inc

更新数据,将姓名为狗剩的age属性加”3“,可在CMD窗口输入以下命令

db.user.update({'name':'狗剩'},{$inc:{'age':3}})

然后查看下修改后的数据

5.删除数据

 我们现在将name为“狗剩”的数据删除,可在CMD窗口输入以下命令

db.user.remove({'name':'狗剩'})

然后我们再查看下user集合中数据

 删除集合中所有记录

db.user.remove({})

 删除集合,删除成功返回true,失败返回false

db.user.drop()

 删除当前数据库

db.dropDatatabse()

  

posted @ 2017-11-17 10:57  莫问今朝乄  阅读(426)  评论(0编辑  收藏  举报