数据库和集合(MongoDB 文档翻译和解读)

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
简介:

MongoDB 存储 BSON 文件即数据纪录到集合中;下面就是数据库中的集合。

image

一、Databases

  在 MongoDB 中,数据库会保存文档式集合。
  在 mongo shell 中如果想选择一个确定的数据库来使用,可以使用 use 命令, 如下面这个例子:

use myDB

1.1 创建一个数据库 Create a Database

  如果数据库不存在, MongoDB 会在你首次为这个数据库存储数据的时候创建此数据库。因此,你可以切换到一个不存在的数据库,并在 mongo shell 中执行下面这个命令:

use myNewDB

db.myNewCollection1.insertOne( { x: 1 } )

  其中 insertOne() 操作会同时创建 myNewDB 数据库和 myNewCollection1 集合即使它们一开始并不存在。
  有关数据库名称限制的列表, Name Restriction.

二、集合 Collections

  MongoDB 存储文档到集合中。集合类似与关系型数据库中的表。

2.1 创建集合 Create a Collection

  如果集合一开始并不存在,MongoDB 会在你首次存储数据到这个集合时创建此集合。

db.myNewCollection2.insertOne( { x: 1} )

db.myNewCollection3.createIndex( { y: 1} )

  关于集合的限制名称列表,点击查看 [Name Restrictions](
https://docs.mongodb.com/manual/reference/limits/#restrictions-on-collection-names).  

2.2 显式创建

  mongoDB 提供 db. createCollection () 方法以显式创建具有各种选项设置的集合, 如设置最大大小或文档验证规则。如果你不指定这些选项, 则无需显式创建集合, 因为当你第一次为 collecitons 存储数据时, MongoDB 就会创建新的集合。

    如果想修改这些集合的选项设置,查看 [collMod 集合模版](https://docs.mongodb.com/manual/reference/command/collMod/#dbcmd.collMod).

2.3 文档验证

  New in version 3.2.
  默认情况下,一个集合中并不要求文档要有一个相同的架构;即在一个集合中的文档并不需要具有相同的字段集,并且每个字段的数据类型在一个集合中都可以不相同。
  从 MongoDB 3.2 开始,你可以在做更新或者插入数据到一个集合中时应用 文档验证规则。更多细节请查看 文档验证.

2.4 修改文档架构

  你可以修改某个集合中的文档架构,比如增加新的字段,移除旧的字段,修改某个字段的数据类型,并最终将文档更新到新的架构之中。

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
1月前
|
存储 NoSQL MongoDB
MongoDB如何创建数据库
MongoDB如何创建数据库
|
2天前
|
存储 NoSQL 关系型数据库
MongoDB非关系型数据库实战
【5月更文挑战第6天】MongoDB,流行的NoSQL数据库,以其灵活的数据模型和高性能备受青睐。本文介绍了MongoDB的基础,包括文档型数据库特性、安装配置、数据操作。通过电商订单管理的实战案例,展示了MongoDB在处理复杂数据结构和大规模数据时的优势,适用于电商、游戏、视频直播等场景。MongoDB的索引、全文搜索和地理空间功能进一步增强了其实用性。注意性能优化和扩展性以确保系统稳定性和可靠性。
|
9天前
|
弹性计算 NoSQL Shell
一键安装 MongoDB 数据库脚本
【4月更文挑战第29天】
14 4
|
15天前
|
NoSQL MongoDB 数据库
MongoDB数据恢复—MongoDB数据库文件被破坏的数据恢复案例
服务器数据恢复环境: 一台Windows Server操作系统服务器,服务器上部署MongoDB数据库。 MongoDB数据库故障&检测: 工作人员在未关闭MongoDB数据库服务的情况下,将数据库文件拷贝到其他分区。拷贝完成后将原MongoDB数据库所在分区进行了格式化操作,然后将数据库文件拷回原分区,重新启动MongoDB服务,服务无法启动。
|
19天前
|
NoSQL MongoDB Redis
Python与NoSQL数据库(MongoDB、Redis等)面试问答
【4月更文挑战第16天】本文探讨了Python与NoSQL数据库(如MongoDB、Redis)在面试中的常见问题,包括连接与操作数据库、错误处理、高级特性和缓存策略。重点介绍了使用`pymongo`和`redis`库进行CRUD操作、异常捕获以及数据一致性管理。通过理解这些问题、易错点及避免策略,并结合代码示例,开发者能在面试中展现其技术实力和实践经验。
158 8
Python与NoSQL数据库(MongoDB、Redis等)面试问答
|
29天前
|
存储 SQL NoSQL
mongodb数据库使用
mongodb数据库使用
|
1月前
|
存储 SQL NoSQL
【MongoDB】如何区分MongoDB和关系型数据库?
【4月更文挑战第1天】【MongoDB】如何区分MongoDB和关系型数据库?
|
7天前
|
关系型数据库 MySQL Linux
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
【MySQL-10】数据库函数-案例演示【字符串/数值/日期/流程控制函数】(代码演示&可cv代码)
|
7天前
|
SQL 关系型数据库 MySQL
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
【MySQL-5】DDL的数据库操作:查询&创建&删除&使用(可cv代码+演示图)
|
7天前
|
SQL 关系型数据库 MySQL
【MySQL-1】理解关系型数据库&数据的数据模型
【MySQL-1】理解关系型数据库&数据的数据模型