MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写,是一个基于分布式文件存储的开源数据库系统。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库。

在高负载的情况下,添加更多的节点,可以保证服务器性能。

MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。

概念上来讲:

MongoDB的集合类似sqlserver的表

MongoDB的文档类似sqlserver的表数据

1、MongoDB 创建集合

MongoDB 创建集合的语法:

db.createCollection(name, {size: ..., capped: ..., max: ...,autoIndexId: ...})

参数说明:

name:要创建集合的名称

size(数值):(可选)为固定集合指定一个最大值(以字节计)。如果 capped 为 true,也需要指定该字段。

capped(布尔):(可选)如果为 true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最早的文档。当该值为 true 时,必须指定 size 参数。

autoIndexId(布尔):(可选)如为 true,自动在 _id 字段创建索引。默认为 false。

max(数值):(可选)指定固定集合中包含文档的最大数量。

在插入文档时,MongoDB 首先检查固定集合的 size 字段,然后检查 max 字段。

创建集合实例1:

_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> use tsemongo
switched to db tsemongo
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.createCollection("tsecollection")
{
"ok": 1
}

查看已有集合,可以使用show collections或者show tables这两个命令:

_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show collections
tsecollection → 0.000MB / 0.004MB
tsemongo → 0.000MB / 0.016MB
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables
tsecollection → 0.000MB / 0.004MB
tsemongo → 0.000MB / 0.016MB

创建固定集合tsegoods,整个集合空间大小 1073741824KB=1GB,最大个数为 10000 个:

#不推荐使用autoIndexId选项,将来的版本中将删除该选项

_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.createCollection("tsegoods",{capped:true,autoIndexId:true,size:1073741824,max:10000})
{
"note": "the autoIndexId option is deprecated and will be removed in a future release",
"ok": 1
}

在MongoDB中,你不需要创建集合。当你插入一些文档时,MongoDB 也会自动创建集合:

_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables
tsecollection → 0.000MB / 0.004MB
tsegoods → 0.000MB / 0.004MB
tsemongo → 0.000MB / 0.016MB
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.tsegload.insert({"name":"Tse先生"})
Inserted 1 record(s) in 311ms
WriteResult({
"nInserted": 1
})
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables
tsecollection → 0.000MB / 0.004MB
tsegload → 0.000MB / 0.004MB
tsegoods → 0.000MB / 0.004MB
tsemongo → 0.000MB / 0.016MB

2、MongoDB 删除集合

MongoDB 中删除集合语法:

db.collection.drop()

如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false。

删除集合实例1:

在tsemongo库中删除tsegoods集合,先show tables查询一下tsemongo库中的所有集合,或者show collections查询:

_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables
tsecollection → 0.000MB / 0.004MB
tsegload → 0.000MB / 0.004MB
tsegoods → 0.000MB / 0.004MB
tsemongo → 0.000MB / 0.016MB
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.tsegoods.drop()
true
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables
tsecollection → 0.000MB / 0.004MB
tsegload → 0.000MB / 0.016MB
tsemongo → 0.000MB / 0.016MB

最新文章

  1. Nginx主配置参数详解,Nginx配置网站
  2. 2016.07.08,英语,《Vocabulary Builder》Unit 24
  3. 面向对象编程(七)——Static关键字
  4. VC6.0装了visual assist x回车键不能补全代码的解决方法
  5. Linux设备驱动01
  6. (转载)Mysql中,SQL语句长度限制
  7. ASP.NET Boilerplate 邮件类使用
  8. cf C. Sereja and Algorithm
  9. Windows下搭建objective C开发环境
  10. C#线程同步(转)
  11. Spring框架(6)---AspectJ实现AOP
  12. angular中的$q服务
  13. 说一说关于破解支付宝AR红包的事
  14. Git 版本还原命令
  15. ios和android 浏览器适配问题总结
  16. bzoj4821-线段树区间lazy_tag下放的优先级和区间覆盖
  17. Chrome 开发者控制台中,你可能意想不到的功能
  18. sklearn中的模型评估-构建评估函数
  19. Python记录12:迭代器+生成器+生成式
  20. java学习路线之必会的java基础教程

热门文章

  1. Linux系统学习 十二、VSFTP服务—简介与原理
  2. 11. java random类
  3. 微信小程序的坑(持续更新中)
  4. Centos6进入单用户模式的两种方法
  5. MySQL 在 Windows 下安装教程、避坑指南
  6. table-layout:fixed
  7. Java入门系列之StringBuilder、StringBuffer(三)
  8. TypeScript `this` 入参
  9. 将python项目打包为可运行的windows桌面exe程序
  10. C#中获取指定路径下指定后缀名的所有文件的路径的list