zoukankan      html  css  js  c++  java
  • mongodb基本语句使用

    mongodb学习:
    ##mongodb基础
    ##数据库常用命令
    ##用户相关
    ##修改、添加、删除集合数据
    ##条件操作符
    ##创建表


    -----------------------------------------------------------------------------
    ##mongodb基础
    MongoDB由databases(相当于Mysql的数据库)组成,
    databases由collections组成(collection相当于Mysql的表)
    collections由documents组成(document相当于Mysql的行),
    documents由fields组成(fields相当于Mysql的列)


    在mongodb中使用一种类json的bson存储数据。bson数据可以理解为在json的基础上添加了一些json中没有的数据类型。


    mongodb是异步写数据


    MongoDB没有创建数据库的命令,但有类似的命令。
    如:如果你想创建一个“myTest”的数据库,先运行use myTest命令,之后就做一些操作(如:db.createCollection('user')),这样就可以创建一个名叫“myTest”的数据库。


    -----------------------------------------------------------------------------
    ##数据库常用命令


    输入help可以看到基本操作命令:


    Help查看命令提示
    help
    db.help();
    db.yourColl.help();
    db.youColl.find().help();
    rs.help();


    切换/创建数据库
    use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库


    查询所有数据库
    show dbs;


    查看当前使用的数据库
    db;
    db.getName();
    db和getName方法是一样的效果,都可以查询当前使用的数据库


    显示当前db状态
    db.stats();


    创建一个聚集集合(table)
    db.createCollection(“collName”, {size: 20, capped: 5, max: 100});
    db.createCollection(“mytb”);


    得到指定名称的聚集集合(table)
    db.getCollection("account");


    得到当前db的所有聚集集合
    db.getCollectionNames();


    显示当前db所有聚集索引的状态
    db.printCollectionStats();


    当前db版本
    db.version();


    查看当前db的链接机器地址
    db.getMongo();


    删除当前使用数据库
    db.dropDatabase();


    修复当前数据库
    db.repairDatabase();


    从指定主机上克隆数据库
    db.cloneDatabase(“127.0.0.1”); 将指定机器上的数据库的数据克隆到当前数据库


    从指定的机器上复制指定数据库数据到某个数据库
    db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中


    在表中增加一条数据:
    db.mytb.Save({id:1,name:"tester"});


    -----------------------------------------------------------------------------
    ##用户相关
    添加一个用户
    db.addUser("name");
    db.addUser("userName", "pwd123", true); 添加用户、设置密码、是否只读


    数据库认证、安全模式
    db.auth("userName", "123123");


    显示当前所有用户
    show users;


    删除用户
    db.removeUser("userName");


    -----------------------------------------------------------------------------
    ##修改、添加、删除集合数据
    添加
    db.users.save({name: ‘zhangsan’, age: 25, sex: true});
    添加的数据的数据列,没有固定,根据添加的数据为准

    修改
    db.users.update({age: 25}, {$set: {name: 'changeName'}}, false, true);
    相当于:update users set name = ‘changeName’ where age = 25;

    db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true);
    相当于:update users set age = age + 50 where name = ‘Lisi’;

    db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true);
    相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’;

    删除
    db.users.remove({age: 132});

    查询修改删除
    db.users.findAndModify({
    query: {age: {$gte: 25}},
    sort: {age: -1},
    update: {$set: {name: 'a2'}, $inc: {age: 2}},
    remove: true
    });

    db.runCommand({ findandmodify : "users",
    query: {age: {$gte: 25}},
    sort: {age: -1},
    update: {$set: {name: 'a2'}, $inc: {age: 2}},
    remove: true
    });


    -----------------------------------------------------------------------------
    ##条件操作符
    (>) 大于 - $gt
    (<) 小于 - $lt
    (>=) 大于等于 - $gte
    (<= ) 小于等于 - $lte


    -----------------------------------------------------------------------------
    #####################################
    ##创建表
    use mydb;
    db.addUser("snow","snow");
    db.auth("snow","snow");
    db.createCollection("test");
    show collections;
    db.test.save({id:1,name:"tester"});
    db.test.find();
    #####################################
    use mydb;
    db.mydb.insert(document);
    document=({"user_id" : "ABCDBWN","password" :"ABCDBWN" ,"date_of_join" :"15/10/2010" ,"education" :"B.C.A." , "profession" : "DEVELOPER","interest" :"MUSIC","community_name" :["MODERN MUSIC", "CLASSICALMUSIC","WESTERN MUSIC"],"community_moder_id" : ["MR. BBB","MR. JJJ","MRMMM"],"community_members" : [500,200,1500],"friends_id" :["MMM123","NNN123","OOO123"],"ban_friends_id" :["BAN123","BAN456","BAN789"]});
    #####################################

  • 相关阅读:
    贴现值计算
    基于“淘宝”的六种质量属性场景描绘
    Maven 学习笔记1
    酷客机器学习十讲笔记10
    酷客机器学习十讲笔记9
    酷客机器学习十讲8
    酷客机器学习十讲笔记7
    酷客机器学习十讲笔记6
    酷客机器学习十讲笔记5
    前后端分离项目学习笔记
  • 原文地址:https://www.cnblogs.com/babyfacer/p/4345040.html
Copyright © 2011-2022 走看看