分类:
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. NTFS 读写高手进阶 - Windows 格式硬盘 Mac存文件

    常识:硬盘格式:FAT32 - WIndows 硬盘分区格式, 有点通用性高, 缺点不支持单个大于 4G 的文件. exFAT - Windows 硬盘分区格式, 兼容性低. 稳定性不如 FAT32. ...

  2. .net C# 苹果消息推送 工具类

    public class AppleAPNSMessage { /// <summary> /// 苹果信息推送 证书 路径(注意测试版跟正式发布版证书上不一样) /// </sum ...

  3. Java中的字面量

    在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(natation).几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串:而有很多也对布尔类型和 ...

  4. rune is alias of int32

    I think chendesheng's quote gets at the root cause best: Go uses a lot of signed values, not just fo ...

  5. Junit单元测试对线程测试没反应

    今天还想简单写写线程的东西,结果刚刚写完我就懵逼了. 结果啥都没有输出,而用主方法运行就可以输出.没办法,只有度年来寻求自己的答案了 结果各方面的了解,我算是有个了解了. 首先来看看代码 packag ...

  6. MyBatis 系列教程1-环境配置

    MyBatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyB ...

  7. spark-2.0.0与hive-1.2.1整合

    SparkSQL与Hive的整合 1. 拷贝$HIVE_HOME/conf/hive-site.xml和hive-log4j.properties到 $SPARK_HOME/conf/ 2. 在$SP ...

  8. 黑帽么metasploit

    .Metasploit框架介绍Metasploit升级更新 Metasploit端口扫描 Metasploit SMB 获取系统信息 Metasploit 服务识别 Metasploit 密码嗅探 M ...

  9. mysql中的unix_timestamp函数

    偶然看到MySQL的一个函数 unix_timestamp(),不明就里,于是就试验了一番. unix_timestamp()函数的作用是返回一个确切的时间点的UNIX时间戳,这个Unix时间戳是一个 ...

  10. 为什么new的普通数组用delete 和 delete[]都能正确释放

    由同事推荐的一篇博客: 为何new出的对象数组必须要用delete[]删除,而普通数组delete和delete[]都一样-------_CrtMemBlockHeader 文章解释了delete 内 ...