XDH_LESSON7

MongoDB的安装和增删改查

1.安装 MongoDB(在root下面执行)

sudo su //到root
sudo apt-get install mongodb
apt-get update //如果遇到找不到安装包的话运行
sudo apt-get install mongodb //然后再执行一次

或者获取最新版本:

   wget mongodb-linux-x86_64-amazon-3.2.8.tgz
   tar zxvf mongodb-linux-x86_64-amazon-3.2.8.tgz
   cd /usr/local/mongodb-linux-x86_64-amazon-3.2.8/bin

在运行前,需要创建mongodb需要的存放数据和日志的目录:

      sudo mkdir -p /data/db/
      sudo chmod -R 777 /data/db/

关闭/启动

sudo service mongodb stop  
sudo service mongodb start

连接服务器

   mongo

2.数据库创建和增删改查

    use xiongdihui

·创建数据库下的集合,可以看成是一个表格TABLE

    db.createCollection("Liuhengyu");

·增加插入数据

    db.Liuhengyu.insert([{"_id":1,"name":"刘帅哥"},{"_id":2,"name":"韩美女"}]);

·查看数据

    db.Liuhengyu.find();
    例如: 
    db.Liuhengyu.find({"_id":{$lte:12}}); --where id<=val

·删除数据

   db.Liuhengyu.remove({"_id":1});

扩展:
1.查看用户下所有集合

   show collections;

2.Mongodb对大小敏感


·删除数据库下集合

   db Liuhengyu drop();

·更新操作:
1.set修改器,默认

    db.Liuhengyu.update({"_id":1,{"name":"liushuige"});db.Liuhengyu.find();

·修改器
·$inc。

     db.Liuhengyu.insert({"_id":1,"url":"www.xiongdilian.com","pageViews":1})
     db.Liuhengyu.update({"_id":1},{"$inc":{"pageViews":1}});

·$set

    db.Liuhengyu.update({"_id":1},{"$set":{"url":"[email protected]"}});

将URL变成一个数组

      db.Liuhengyu.update({"_id":1},{"$set":{"url":["[email protected]","[email protected]","[email protected]"]}});

删除键

     db.Liuhengyu.update({"_id":1},{"$unset":{"url":1}})

数组修改器
$push 向数组中添加值,会出现重复的值

      db.Liuhengyu.update({"_id":1},{"$push":{"company":"sc"}});

$each

      db.Liuhengyu.update({"_id":1},{"$push":{"company":{"$each":["a1","a2","a3","a4"]}}});

$slice 指定最大的长度,它的值必须是负数,表示保留最后的n个值

      db.Liuhengyu.update({"_id":1},{"$push":{"company":{"$each":["c1","c2","c3","c4","c5","c6","c7"],"$slice":-10}}});

$pop从数组中删除一个元素 key:1 表示从数据的末尾开始 key=-1表示从头部开始

      db.Liuhengyu.update({"_id":1},{"$pop":{"company":1}});

$pull 从数组中删除匹配的值

      db.Liuhengyu.update({"_id":1},{"$pull":{"company":"a2"}});

接下来加一点点难度

     db.Liuhengyu.insert({ 
     "_id":12,
     "content":"xiongdilian如何?",\
     "comments":      
        [{"comment":"好","count":0},
        {"comment":"很好","count":0}, 
        {"comment":"非常好","count":0}, ]})

通过数组下表访问

        db.Liuhengyu.update({"_id":12},{"$inc":{"comments.1.count":1}});  

       db.Liiuhengyu.update({"comments.comment":"很好"},{"$set":{"comments.$.comment":"很很好"}}); 

Mongdb默认每次只修改一个文档,如果要修改所有满足条件的记录,则需要在后面添加条件

      db.Liuhengyu.update({"comments.comment":"好"},{"$inc":{"comments.$.count":3}},false,true);

你可能感兴趣的:(XDH_LESSON7)