我们知道,在关系型数据库里面有数据库、数据表、表里面是一行一行的数据。而mongodb是非关系型数据库,它有的是数据库、集合、文档,分别对应关系型里面的数据库、数据表、和表里面一行一行的数据。在mongodb里,文档构成集合,集合构成数据库

关系组成:

1.文档

这个文档,可不是平常说的word文档,在mongodb里面,文档指的是集合里面的一行数据。来看一下它的样子。

可以看到,一个文档有三部分组成,id(用来表示一行文档),键名(一个文档中不可出现重复的键名,且区分大小写)和键值,一行文档中,可以含有多个键值对,可以存放不同的数据类型。

2.集合

集合就相当于是关系型数据库里面的表,集合由文档构成,可以使用show collections或show tables命令查看一个数据库里面含有几个集合,像这样(后面还有介绍,这里先看一下)

3.数据库

数据库就和mysql里面的是一样的,只不过在mongodb里面,数据库是由集合构成的,可以使用show dbs 查看已经创建的数据库,像这样

 

常用命令:

1.数据库命令:

创建/切换数据库:use “数据库名”

使用use命令,如果后面跟没有的数据库名,则创建一个新的数据库,如果后面跟已有的数据库名,则切换到另一个需要操作的数据库。可以把use想象成一个指针,如果数据库已存在,就指向这个数据库,如果不存在,就创建它。

创建一个 new_data数据库,使用db命令查看当前数据库指针所指向的数据库,

但这时候,使用show dbs命令查看并不显示这个新创建的数据库,而是会在第一次向数据库中插入一个文件的时候才去创建对应的数据库。在这一点上,集合也有类似的特性。在这个数据库里创建一个集合,命令如下

db.createCollection("集合名")

再使用show dbs查看一下数据库,就有了刚才创建的new_data数据库

 删除数据库:db.dropDatabase()

删除已经存在的那个tryone数据库,如下:

先使用use使数据库指针指向tryone数据库,然后使用db命令查看当前正在操作的数据库,使用删除命令后,再此查看数据库,可以看到,tryone数据库已经被删除了,注意:数据库删除后,指针的指向还未改变,接着要使用use 改变指针指向

2.集合命令

查看集合:show collections/tables

上面,已经提到了集合的创建命令:db.createCollection("集合名"),用它再来创建一个name集合,如下:

看到此时数据库里已经有了name和new两个集合

再来看一下集合的删除命令,db.集合名.drop(),如下:

删除集合成功后,返回true,再次查看集合。

3.文档命令

文档的插入:db.集合名.insert({"键名":键值})

对上面的new集合进行插入文档。如下:

文档的查询:db.集合名.find()

对上面插入的文档进行查询。如下:

文档的更新:db.集合名.update({"name":"zhangsan"},{$set:{"name":"lisi"}})

这里第一个大括号后面是update的查询条件,类似sql update查询内where后面的。

再次查看,键值已经被更改。

文档的删除:db.集合名.remove()

(ps:欢迎大佬随时指正。。。。。)

********************不积跬步无以至千里 ********************

mongodb的数据库,集合,数据可介绍。的更多相关文章

  1. MongoDB入门---数据库&&&集合的基本操作

    MongoDB作为一种nosql的数据库,它自己本身的增伤改查还有数据库集合的创建和展示与一般的数据库较之是有一部分差别的.我们今天就来看一下MongoDB的一些基本操作.    首先呢,就是先来数据 ...

  2. MongoDB:数据库介绍与基础操作

    二.部署在本地服务器 在上次的学习过程中,我们主要进行了MongoDB运行环境的搭建和可视化工具的安装.此次我们将学习MongoDB有关的基本概念和在adminmongo上的基本操作.该文档中的数据库 ...

  3. 如何将MongoDB数据库的数据迁移到MySQL数据库中

    FAQ v2.0终于上线了,断断续续忙了有2个多月.这个项目是我实践的第一个全栈的项目,从需求(后期有产品经理介入)到架构,再到设计(有征询设计师的意见).构建(前端.后台.数据库.服务器部署),也是 ...

  4. mongodb远程数据库的连接以及备份导入导出数据

    环境win10; 运行cmd cd到目录mongodb的bin目录: 连接远程mongodb: 连接命令:mongo -u username -p pwd host:post/database(数据库 ...

  5. Window10系统中MongoDB数据库导入数据文件

    首先进入C:\Program Files\MongoDB\Server\4.0\bin>  打开cmd 创建一个空的数据库集合  db.createCollection("myColl ...

  6. Mongodb到mysql数据库的数据迁移(Java,Windows)

    运行环境为windows 测试过260万的数据表,迁移大概要10分钟左右,当然肯定和网络,字段大小什么的有关系. 遇到的坑和注意点都用紫色标记了(对,就是我大乃团的高冷紫--Nogizaka 46) ...

  7. PHP操作MongoDB数据库具体样例介绍(增、删、改、查) (六)

    PHP操作mongodb: PHP 要操作mongodb须要打模块 官网能够下载:http://pecl.php.net/package/mongo 下载 mongodb设置成用户授权的启动方式 ph ...

  8. MongoDB 表(集合) 创建删除、数据增删改查

    MongoDB 表(集合) 创建删除和增删改查数据 创建一个集合(emp) 在创建集合之前先使用use xxx,选择数据库,如果没有会创建(并不是真正的创建,只有在数据库里面保存集合数据之后才能够真正 ...

  9. mongodb基础系列——数据库查询数据返回前台JSP(二)

    上篇博客论述了,数据库查询数据返回前台JSP.博客中主要使用Ajax调用来显示JSON串,来获取其中某一个字段,赋给界面中的某一个控件. 那这篇博客中,我们讲解,把后台List传递JSP展示. Lis ...

随机推荐

  1. 通过JTAG对比内核启动后text/rodata段内容

    关键词:vmlinux.strip.dump._text.__end_rodata等等. 在日常的调试中,可能会在某些情况下踩到内核重要的数据,比如代码段或者rodata之类. 这种情况下,需要确认这 ...

  2. 如何在Markdown格式下插入动图/gif

    上传GIF动图与上传普通图片是一样的,都需要以下在markdown语法中 ![]() 的小括号内填写图片的地址.问题在于如何获取本地gif的地址呢? 核心的东西就是要把这个gif动图传上网络,这样图片 ...

  3. awk命令使用整理

    1. awk默认以空格分隔, 可摘出指定位置的内容, 通常用法如下( 文件名称为file.txt ): 文件中行内容为:  12:3   a  4:56   b awk  '{print $1}'  ...

  4. Eclipse maven创建web项目报错Could not resolve archetype

    1.下载http://repo1.maven.org/maven2/archetype-catalog.xml 通过eclipse下载和网页下载我这里都比较慢,最后用的迅雷下载 2.将本地xml文件配 ...

  5. CSP2019 树上的数 题解

    题面 这是一道典型的部分分启发正解的题. 所以我们先来看两个部分分. Part 1 菊花图 这应该是除了暴力以外最好想的一档部分分了. 如上图(节点上的数字已省略),如果我们依次删去边(2)(1)(3 ...

  6. 向github中已创建好的repository提交文件

    git init git remote add origin git@github.com:taishan1994/learn_django.git git pull origin master gi ...

  7. OA传SAP设置(备忘)

    package com.seeyon.apps.ext.kk.flow.hc; import java.rmi.RemoteException; import java.text.SimpleDate ...

  8. Core源码(五)IQueryable(转)

    如果要对Iqueryable进行深入的学习,那么对于拉姆达表达式.委托需要有一定了解.这里面拉姆达表达式就是匿名函数的一种写法,而委托我们常用FUNC和ACTION,这个都是对于delegate委托的 ...

  9. C#命名规则和设计规则

    Pascal 将每个单词的第一个字符大写.遇到两个字母的首字母缩略词时,两个字母都要大写 命名空间:使用公司名作为前缀.在第二级名称中使用稳定的与版本无关的产品名称 类型:名词或名词短语命名 结构:名 ...

  10. django中're_path'的用法

    1.re_path和path的作用是一样的.只不过're_path'是在写url的时候可以用正则表达式,功能更加强大.2.写正则表达式都推荐使用原生字符串.也就是以‘r’开头的字符串:r'move/' ...