MongoDB入门

MongoDB非常强大,同时也很容易上手。本文会介绍一些MongoDB的基本概念。
- 文档是MongoDB中数据的基本单元,非常类似于关系数据库管理系统中的行。
- 类似地,集合可以被看做没有模式的表。
- MongoDB自带简洁但功能强大的JavaScript shell,这个工具对于管理MongoDB实例和操作数据作用非常大。
- 每一个文档都有一个特殊的键“_id”,它在文档所处的集合中是唯一的。

文档

文档是MongoDB的核心概念。多个键及其关联的值有序地放置在一起便是文档。每种编程语言表示文档的方法不太一样。例如,在JavaScript中,文档表示为对象:
{greeting:"Hello, World!"}

- 文档中的键/值对是有序的。(但通常文档中的键的顺序并不重要)
- 文档中的值不仅可以是双引号里面的字符串,还可以是其他几种数据类型。
- 文档的键是字符串。键不能含有空字符、$、不要以”_”下划线开头,以下划线开头的键是保留的。
- MongoDB不但区分值的类型,也区分键的大小写。

集合

集合就是一组文档。如果说MongoDB中的文档类似于关系型数据库中的行,那么集合就如同表。

无模式

集合是无模式的。这以为这一个集合里面的文档可以使各式各样的。

命名

我们可以通过名字来标识集合。
- 集合名不能是空字符串“”。
- 集合名不能含有空字符。
- 集合名不能以“system.”开头,这是为系统集合保留的前缀。例如,system.users这个集合保存着数据库的用户信息,system.namespace集合保留着所有数据库集合的信息。
- 用户创建的集合名字不能含有保留字$.

子集合

祖师集合的一种惯例是”.”字符分开按命名空间划分的子集合。

数据库

MongoDB中多个文档组成集合,同样多个集合可以组成数据库。和集合一样,数据库也通过名字来表示。
- 不能是空字符串
- 不能含有空格、”.”、$、/、\和空字符
- 应全部小写
- 最多64字节

启动MongoDB

MongoDB一般作为网络服务器来运行,客户端可以连接到服务器并执行操作。要启动该服务器,需要运行mongod可执行文件。
mongod在没有参数的情况下会使用默认数据目录/data/db,并使用27017端口。

MongoDB Shell

MongoDB自带一个JavaScript shell,可以从命令行与MongoDB实例交互。

运行shell

运行mongo启动shell。
shell会在启动时自动连接MongoDB服务器,所以要确保在使用shell之前启动mongod。
shell是功能完备的JavaScript解释器,可以运行任何JavaScript程序。还可以充分利用JavaScript标准库。比如:

x=200
200
x/5
40
Math.sin(Math.PI/2);
1

也可以定义和调用JavaScript函数。
注意,可以使用多行命令。

MongoDB客户端

虽然能运行任意JavaScript程序很酷,但shell的真正威力在于它是一个独立的MongoDB客户端。开启的时候,shell会连接到MongoDB服务器的test数据库,并将这个数据库连接赋值给全局变量db。这个变量是通过shell访问MongoDB的主要入口点。
可以通过db变量来访问其中的集合。例如db.baz返回当前数据库的baz集合。既然现在可以在shell中访问集合,那么基本上就可以执行几乎所有的数据库操作了。

shell中的基本操作

在shell查看操作数据会用到4个基本操作:创建、读取、更新和删除(CRUD)

创建

insert函数添加一个文档到集合里面。

读取

find会返回集合里面所有的文档。若只是想查看一个文档,可以用fineOne。find和findOne可以接受查询文档形式的限定条件。这将通过查询限制匹配的文档。

更新

如果要更新,就要用到update了。update接受两个参数:第一个是要更新文档的限定条件 ,第二个是新的文档。

删除

remove用来从数据库中永久地删除文档。在不适用参数进行调用的情况下,它会删除一个集合内所有的文档。它可以接受一个文档以指定限定条件。

使用shell的窍门

由于mongo是个JavaScript shell,通过在线查看JavaScript文档能获得很多帮助。shell本身内置了帮助文档,可以通过help命令查看。
使用db.help()可以查看数据库级别的命令的帮助,集合的相关帮助可以通过db.foo.help()来查看。
有个了解函数功用的技巧,就是在输入的时候不要输括号。这样就会显示该函数JavaScript源代码。

对于 MongoDB入门,你可以按照以下步骤进行学习: 1. 下载并安装 MongoDB:在 MongoDB 的官方网站上下载适合你操作系统的安装程序,并按照提示进行安装。 2. 启动 MongoDB 服务:安装完成后,启动 MongoDB 服务。在 Windows 上,你可以通过运行 `mongod` 命令启动服务。在 macOS 或 Linux 上,可以打开终端并运行 `mongod` 命令。默认情况下,MongoDB 会在本地的 27017 端口上启动。 3. 连接到 MongoDB:在另一个终端窗口或命令提示符中,使用 `mongo` 命令连接到 MongoDB。默认情况下,它会连接到本地的 MongoDB 服务器。 4. 创建数据库:在 `mongo` shell 中,可以使用 `use <database_name>` 命令创建一个新数据库,例如 `use mydb`。 5. 创建集合(表):集合类似于关系数据库中的表。你可以使用 `db.createCollection("<collection_name>")` 命令创建一个新集合,例如 `db.createCollection("mycollection")`。 6. 插入数据:使用 `db.<collection_name>.insertOne(<document>)` 命令将数据插入到集合中。例如,`db.mycollection.insertOne({ name: "John", age: 30 })`。 7. 查询数据:使用 `db.<collection_name>.find()` 命令查询集合中的所有数据。例如,`db.mycollection.find()`。 8. 更新数据:使用 `db.<collection_name>.updateOne(<filter>, <update>)` 命令更新集合中的数据。例如,`db.mycollection.updateOne({ name: "John" }, { $set: { age: 35 } })`。 9. 删除数据:使用 `db.<collection_name>.deleteOne(<filter>)` 命令删除集合中的数据。例如,`db.mycollection.deleteOne({ name: "John" })`。 这是一个 MongoDB 入门的基本流程。你可以根据需要进一步学习和探索 MongoDB 的更多功能和用法。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值