mongodb 使用入门介绍

mongodb基本介绍

mongodb是一种分布式、非关系型的数据库,它区别于SQLserver ,Mysql,Oricle等常规的关系型数据库。它也被称为文档型的数据库,这是因为mongodb在使用过程中脱离了传统的二维表格形式,使得它在存储数据时更加灵活。在利用mongodb存储数据时给人的感觉更像是在写json文件。

    mongoDB的适用场景:

    1.  适合作为信息基础设施的持久化缓存层

    2. 适合实时的插入、更新与查询,并具备应用程序实时数据存储所需的复制及高度伸缩性

    3. 适合文档化格式的存储及查询

    4. 适合由数十或数百台服务器组成的数据库

     mongoDB不适用场景:

     1. 要求高度事务性的系统。例如对于银行或会计等需要大量原子性复杂事物的应用程序来说,还是需要关系型数据库的。

     2. 传统的商业智能应用

     3. 复杂的表级联查询

mongodb基本语法

打开命令行控制台,输入命令mongo,如果您还没有安装mongodb请查看上篇安装介绍的文章。 在输入mongo命令后我们就会进入到mongodb的命令环境。如果您的系统提示,mongo不是内部或外部命令,那你需要首先配置一下path环境。
找到mongodb安装所在目录,并找到bin目录所在地址,复制地址(默认C:\Program Files\MongoDB\Server\3.2\bin),右键 计算机->属性 -> 高级系统设置 -> 环境变量 ->path 编辑,将地址粘贴在最后。

查看数据库

 show dbs; // 默认 显示 test local

添加单条记录

db.admin.insertOne({username:'jack',password:'123456'}); // 自动创建admin文档并插入一条数据

添加多条记录

db.admin.insertMany([{username:'alice',password:'abcd'},{username:'allen',password:'hello'}]);

不区分条数插入记录

db.admin.insert({username:'jone',password:'somewd'});
db.admin.insert([{username:'name1',password:'pw1'},{username:'name2',password:'pw2'}]);

查询文档记录

db.admin.find(); 

修改单条记录

db.admin.updateOne({username:'allen'},{$set:{password:'1111!!'}});

修改多条记录

db.admin.updateMany({},{$set:{password:'abcd!!'}}); // 不写条件,全部修改

不区分条数修改记录

db.admin.update({username:'jack'},{$set:{password:'hello!!'}});

删除单条记录

db.admin.deleteOne({password:'hello!!'});

删除多条记录

db.admin.deleteMany([{username:'jone'},{username:'name2'}]);

根据条件进行删除

db.admin.remove({username:'name1'});

全部删除

db.admin.remove({}); //不添加条件,删除全部记录

现在admin文档内所有记录都已经被删除,我们需要重新添加一些数据,以便完成下面的学习和操作。新建josn数据如下:

[{ username:'jack',password:'pw000',age:'18'},
{ username:'jone',password:'pw111',age:'20'},
{ username:'allen',password:'pw222',age:'16'},
{ username:'salary',password:'pw333',age:'13'},
{ username:'mesa',password:'pw333',age:'24'} ]

admin文档中插入数据

db.admin.insert(
[{ username:'jack',password:'pw000',age:'18'},
  { username:'jone',password:'pw111',age:'20'},
  { username:'allen',password:'pw222',age:'16'},
  { username:'salary',password:'pw333',age:'13'},
  { username:'mesa',password:'pw333',age:'24'}
]);

条件查询

db.admin.find({age:'13'}); // 查询年龄为13的记录

db.admin.find({age:'13'},{username:1,password:1,_id:0});// 显示字段 0不显示 1 显示

指针方法

db.admin.find({}).size(); // 返回查询结果条数

db.admin.find({}).skip(3); //跳过前3条记录

db.admin.find({}).limit(2); //截取前两条记录

db.admin.find({}).skip(2).limit(2); // 返回第 3 、4 条数据

排序

db.admin.find({}).sort({age:1});  // 按年龄从小到大排序

db.admin.find({}).sort({age:-1});  //按年龄从大到小排序
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值