简介

MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。它是非关系型数据库,但其结构与MySQL又很相似,mysql中的表格,在这里被称为集合,mysql表格内的数据是一条条带字段的数据,但在这里是以字典形式存在的一个个文档,也叫json对象,其操作难度远低于mysql。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案,应用于实时变化的场景。

进入和退出

mongo #进入
exit #退出

库级管理

  • 显示所有库
show dbs
  • 切换数据库
use 库名
  • 查看所在库
db
  • 删库
db.dropDatabase() #删除当前所在库
  • 创建库:与切换数据库一样,但新建的库需要创建表格才能生效。下图可以清晰体现出来。

集合管理

  • 查看当前数据库的集合
show collections
  • 集合创建:集合名一定要用引号括起来
db.createCollection('name')
  • 删除集合
db.集合名.drop()

数据级管理

  • 增:插入数据分插一条和多条,多条是以数组形式。这里的key可以不加引号,但value的字符一定要加引号。
db.集合名.insert({key1:value,key2:value})#插一条
db.集合名.insert([{key1:value1,key2:value2},{key1:value3,key2:value4}])插多条
  • 删:删也分为删一条和删多条,其可以指定条件删除。
db.集合名.remove({条件},{justOne:true})#删一个
db.集合名.remove({条件})#删多个
  • 改:默认是更改一条,可修改参数multi实现一次更改多条,这里分全文档更新和指定属性更新。
db.集合名.update({原键值对},{更改后键值对})#全文档更新
db.集合名.update({条件},{$set:{更改后的键值对}})#指定属性更新
db.集合名.update({原键值对},{更改后键值对},{multi:true}) #更新多条
db.集合名.update({条件},{$set:{更改后的键值对}},{multi:true})#更新多条
  • 查:查分全查询和条件查询,还可设置查询后的结果是只看某个键值对或不看某个键值对。在最后加上.preety()可使查询结果更美观。
db.集合名.find() #全查询
db.集合名.find({条件})#条件查询
db.集合名.find({条件},{key:true})#查询结果只看key这个键值对
db.集合名.find({条件},{key:false})#查询结果不看key这个键值对
db.集合名.find().pretty()#使查询结果更美观

查询后的每条数据都有一个_id值,这个id值是唯一的,由mongo默认给予,可以自己设定。

Mongodb数据库(linux)——基础操作的更多相关文章

  1. 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用

    在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...

  2. Linux基础操作及概念

    Linux基础操作及概念 终端的概念 通常我们在使用 Linux 时,并不是直接与系统打交道,而是通过一个叫做 Shell 的中间程序来完成的,在图形界面下为了实现让我们在一个窗口中完成用户输入和显示 ...

  3. 第一篇:一天学会MongoDB数据库之Python操作

    本文仅仅学习使用,转自:https://www.cnblogs.com/suoning/p/6759367.html#3682005 里面新增了如果用用Python代码进行增删改查 什么是MongoD ...

  4. mysql数据库和mongodb数据库的相关操作以及两个数据库的区别

    在docs命令中执行数据操作 MySQL数据库 先启动MySQL服务器  net start mysql 进入MySQL服务器MySQL -uroot -p(这里写你的数据库密码) (-P是从哪个端口 ...

  5. 安卓基础之Sqlite数据库最最基础操作

    Sqlite数据库基础操作 摘要:在应用中新建一个数据库,并创建一个数据表写入数据,然后读取表中数据并展示. 主要逻辑: 1.通过继承SQLiteOpenHelper自定义类,定制数据库的表结构,初始 ...

  6. Python连接MongoDB数据库并执行操作

    原文:https://blog.51cto.com/1767340368/2092813 环境设置: [root@mongodb ~]# cat /etc/redhat-release CentOS ...

  7. MongoDB数据库文档操作

    前面的话 本文将详细介绍MongoDB数据库关于文档的增删改查 数据类型 在介绍文档操作之前,首先要了解MongoDB的数据类型 MongoDB支持许多数据类型,包括 1.字符串 - 这是用于存储数据 ...

  8. 数据库(mysql)基础操作

    DDL(数据定义语言)------>建库,建表 DML(数据操作语言)------>对表中的记录操作增删改查 DQL(数据查询语言)------>对表中的查询操作 DCL(数据控制语 ...

  9. 初识Linux 基础操作

    Linux常用指令: 在Linux中如果不懂基础命令,在Linux中将寸步难行,下面是我在初学Linux系统时总结的一些基本命令. 1.基础命令 ls                          ...

随机推荐

  1. 吴裕雄--天生自然C++语言学习笔记:C++ 数字

    下面是一个 C++ 中定义各种类型数字的综合实例: #include <iostream> using namespace std; int main () { // 数字定义 short ...

  2. 如何生成 SSH keys, 并在 Github 或 Gitlab 等上添加密钥

    1 打开 Git Bash $ 2 输入 dir, 确认当前文件夹,并切换到想存密钥文件即pub文件的路径 $ dir 3 生成 密钥命令 ssh-keygen -t rsa -C "{ y ...

  3. Toolbar中系统自带返回键(setDisplayHomeAsUpEnabled)与Toolbar本身的inflateMenu冲突问题

    在APP的Toolbar中可以设置inflateMenu来添加右上角菜单栏,但是我又同时想用系统自带的左侧返回键,随之也产生了问题:右上角的inflateMenu会不生效,即不会产生菜单按钮,查阅资料 ...

  4. java课程之团队开发冲刺阶段2.4

    总结昨天进度: 1.照例学习了课前提醒的功能,不可否认的是,在这个功能上,需要的技术和之前的上课静音有点相似,都是通过广播然后开启service服务,然后进行每分钟的监听,查看时间是否一致,在一致的情 ...

  5. 用ps画一个Gif的小房子(1)

    效果如图: 制作方法: 1.新建200*200的画布:复制一块小房子图片 2.点击窗口-时间轴-勾选帧动画 3.如图所示(我这边是一帧对应一个图层) 4.新建图层-这边要新建24个图层,每个图层对应不 ...

  6. python3+Opencv 搭建环境和基本操作

    一.必备前提: Python3.5及以上版本.pip.windows环境 二.搭建opencv 该部分可以创建隔绝的Python环境来引入,参照virtualenv的使用 在目标的cmd窗口,依次输入 ...

  7. SpingBoot项目搭建(详细)

    SpingBoot (原创:黑小子-余) springboot官网:->点击<- spring官网:->点击<- 一.SpringBoot简介 Spring Boot是由Piv ...

  8. 期末项目之 Json文件

    Github上的json文件: https://raw.githubusercontent.com/color-me/first/master/b

  9. UVALive 3704 细胞自动机 矩阵快速幂

    是时候要做做数学类的题目了 这属于比较简单的矩阵快速幂了,因为有个已知的矩阵循环的结论,所以为了节约时空,只需要保留一行即可,这个稍微有点难写,也不是难写,主要是注意细节.其他的矩阵快速幂一下即可 # ...

  10. 实验吧web-易-what a fuck!这是什么鬼东西?

    打开链接是一大串符号,是js编码的一种,全部复制下来,粘贴在控制台中回车就拿到flag了.