(03)mongodb 数据添加、修改、删除

1、数据添加

  添加一条数据,json格式。

    db.goods.insert({name:'电脑',price:5600,goods_num:'00001',click_num:1});

    db.goods.insert({_id:1,name:'苹果',color:'red',price:12});

  添加多条数据,json数组。

    db.goods.insert([{type:'锅',name:'平底锅',price:300},{_id:2,name:'鱼',num:304}]);

  注意,如果json中没有_id列,会默认生成一个_id,指定_id的时候不能重复,collection中_id唯一。

  下面是插入的4条数据:

  { "_id" : ObjectId("5d3efadd7dc39a8207a088c4"), "name" : "电脑", "price" : 5600, "goods_num" : "00001", "click_num" : 1 }
  { "_id" : 1, "name" : "苹果", "color" : "red", "price" : 12 }
  { "_id" : ObjectId("5d3efcf97dc39a8207a088c7"), "type" : "锅", "name" : "平底锅", "price" : 300 }
  { "_id" : 2, "name" : "鱼", "num" : 304 }

2、数据修改,$set、multi       

  将_id为1的数据,name列的值改为"苹果2" :

  db.goods.update({_id:1},{name:'苹果2'});  执行结果 只有_id、name两列,其余的列都没了。

  db.goods.update({_id:1},{$set:{name:'苹果2'}});  执行结果 只是修改了name列,其余的不变。

  以上只会修改一条记录,修改多条需要添加属性,multi:true,举例如下:

  (1)原始数据:db.person.find();

    { "_id" : 1, "name" : "张三", "sex" : "n", "address" : "北京朝阳" }
    { "_id" : 2, "name" : "张三", "sex" : "n", "address" : "北京朝阳" }

    执行语句:db.person.update({name:'张三'},{$set:{address:'北京朝阳2'}});

    执行后数据:db.person.find();
    { "_id" : 1, "name" : "张三", "sex" : "n", "address" : "北京朝阳2" }
    { "_id" : 2, "name" : "张三", "sex" : "n", "address" : "北京朝阳" }

    结果:只修改了一条。

  (2)原始数据:db.person.find();

    { "_id" : 1, "name" : "张三", "sex" : "n", "address" : "北京朝阳" }
    { "_id" : 2, "name" : "张三", "sex" : "n", "address" : "北京朝阳" }

    执行语句:db.person.update({name:'张三'},{$set:{address:'北京朝阳2'}},{multi:true});

    执行后数据:db.person.find();
    { "_id" : 1, "name" : "张三", "sex" : "n", "address" : "北京朝阳2" }
    { "_id" : 2, "name" : "张三", "sex" : "n", "address" : "北京朝阳2" }

    结果:所有都修改了。用 multi:true 必须要用 $set。

3、删除数据

  db.person.remove({name:'李四'});  删除列名为李四的行

  db.person.remove({});  删除全部数据

 

posted @ 2019-07-29 22:12  雷雨客  阅读(1076)  评论(0)    收藏  举报