分类:
mongodb(6) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

之前我们已经安装了mongodb,并使用客户端连接上了mongodb的服务端。
接下来我们学习一些简单的操作命令。

mongo入门命令
在传统关系型数据库中,我们分为一个个的库,每个库下分为一个个的表:

我们的mongodb也和上面一样,在数据库database下面有N多集合,每个集合
中的数据结构可以完全不同:


(1)查看目前所有数据库(show dbs)
我们启动mongodb客户端,使用show dbs指令,可以查看目前所有数据库:


(2)选择数据库(use databaseName)
我们选择local数据库:

使用show tables可以查看该库下有哪些表。
注意:system开头的表是系统表,不要随意操作,可能会造成数据库崩溃。

(3)查看当前库下的集合(show collections/tables)
上面使用的是show tables,这个语法是为了照顾经常使用关系型数据库的
用户,而使用show collections也是查看该库下的集合(说“表”也可以)。


(4)创建数据库
MongoDb的库是隐式创建,你可以use一个不存在的库,
然后在该库下创建collection,即可创建库。

(5)创建一个集合(db.createCollection('CollectionName'))
我们先创建一个库(use school学校库),
然后使用db.createCollection('CollectionName')指令,
创建一个集合(也就是关系型数据库中所说的“表”),
其中“CollectionName”是你要创建的集合的名称:

我们在school库中创建了一个名为student(学生)的集合。

创建Collection的意义:
对于传统关系型数据库而言,创建一张表的意义在于,界定了这张表每一行的结构,
包括应该有哪几列,数据类型是什么,全部统统界定了。
而对于mongodb这种nosql数据而言,Collection的意义何在?我们每一个Colleciton
其实就是一个大的集合,里面用来放置各种各样不同的文档数据而已。

(6)插入一条数据(db.collectionName.insert({key:value,key:value,...}))
我们在刚刚的school库的student集合中创建一条数据:

使用db.collectionName.find()查看该集合下的所有数据。
我们发现它自动给我们生成了一个id主键。当然,我们也可以自己制定主键:

也即是指定_id属性即可。

我们也可以在同一个集合下,创建含有其他字段的数据:

不受数据结构的束缚,这就正是mongodb的特点。

不仅可以有其他字段,还可以在某个属性中嵌套属性:

可以看到,jackson有一个爱好(hobby)属性,里面是一个数组,然后有一个简介(info)属性,里面有一个新的集合。这就是一个复合集合文档对象了。
注:可以通过插入一条数据,隐式创建一个Collection:

(7)删除一个collection(db.collectionName.drop())
我们这里删除我们刚刚创建的teacher这个collection

删除成功

(8)删除一个库(db.dropDatabase())
我们这里删除我们刚刚创建的school这个库

删除成功

mongoDB3--mongoDB的基本操作。的更多相关文章

  1. mongodb的基本操作与插入文档(document)

    一.mongodb的基本操作: 1.查看mongodb当前所有的databases : show dbs 2.选择数据库(database) : use databaseName(该数据库不存在则会自 ...

  2. 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用

    [网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院  欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...

  3. MongoDB之基本操作与日常维护

    MongoDB基本操作 MongoDB的基本操作主要是对数据库.集合.文档的操作,包括创建数据库.删除数据库.插入文档.更改文档.删除文档.和查询文档. 操作 描述 show dbs 查看当前实例下的 ...

  4. 孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5

    孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5并学习权限设置 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十二天. 今天继续学习mongo ...

  5. 孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4

    孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十一天. 今天继续学习mongoDB的简单操作 ...

  6. 孤荷凌寒自学python第六十四天学习mongoDB的基本操作并进行简单封装3

    孤荷凌寒自学python第六十四天学习mongoDB的基本操作并进行简单封装3 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十天. 今天继续学习mongoDB的简单操作, ...

  7. 孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2

    孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第九天. 今天继续学习mongoDB的简单操作, ...

  8. 孤荷凌寒自学python第六十二天学习mongoDB的基本操作并进行简单封装1

    孤荷凌寒自学python第六十二天学习mongoDB的基本操作并进行简单封装1 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第八天. 今天开始学习mongoDB的简单操作, ...

  9. MongoDB的基本操作

    环境:CentOS6.8  Mongodb3.2.10 启动 启动mongoDB服务器 # service mongod start 启动mongoDB客户端 # mongo 该客户端是一个JavaS ...

  10. MongoDB索引基本操作

    一.简介 在MongoDB建立索引能提高查询效率,只需要扫描索引只存储的这个集合的一小部分,并只把这小部分加载到内存中,效率大大的提高,如果没有建立索引,在查询时,MongoDB必须执行全表扫描,在数 ...

随机推荐

  1. TDD(测试驱动开发)的推广方法论

  2. json_encode不编码中文字符的方式

    json_encode($array,JSON_UNESCAPED_UNICODE);

  3. 2016 ACM Amman Collegiate Programming Contest D Rectangles

    Rectangles time limit per test 5 seconds memory limit per test 256 megabytes input standard input ou ...

  4. java练习 - 字符串反转

    思路: 1. 首先将字符串转换成数组,一个数组元素放一个字符. 2. 循环遍历字符串,将所有字符串前后字符调换位置,比如:第一个和最后一个调换,第二个和倒数第三调换,第三个和倒数第三调换,直到所有字符 ...

  5. Mysql索引基础

    Mysql索引基础 基本概念: 索引是一种特殊的数据库结构,可以用来快速查询数据库表中的特定记录.索引是提高数据库性能的重要方式.索引创建在表上,是对数据库表中一列或多列的值进行排序的一种结构.可以提 ...

  6. 基于Debian系统配置Nginx环境的Node.js应用教程

    Node.js,是当前比较流行的能够动态的快速响应内容的JavaScript框架,在有些环境下比我们使用的PHP应用都能够提高效率.目 前,Node.js可以与我们常用的Nginx.Apache等服务 ...

  7. android 进程和线程管理

    进程和线程的概念: 进程:程序的运行实例. 线程:cpu调度基本单位. Activity启动的时候,启动一个主线程,两个binder线程. 主线程实如何产生的?ZygoteInit启动,经由一系列调用 ...

  8. Html网页的代码

    Html网页的代码 很全哦 1)贴图:<img src="图片地址"> 2)加入连接:<a href="所要连接的相关地址">写上你想写 ...

  9. 字符串匹配—KMP 扩展KMP Manacher

    kuangbin字符串专题传送门--http://acm.hust.edu.cn/vjudge/contest/view.action?cid=70325#overview 算法模板: KMP: ; ...

  10. poj1741_Tree(树的点分治入门题)

    题目链接:poj1741_Tree 题意: 给你一颗n个节点的树,每条边有一个值,问有多少点对(u,v),满足u->v的最短路径小于k. 题解: 典型的树的分治,板子题. #include< ...