介绍:
MongoDB 是一个非常流行的 NoSQL 数据库。 与其他所有数据库一样,它也为您提供了不同的方式,您可以将数据插入到该数据库中,并可以通过对其执行某些操作来轻松地对其进行操作。 然而,在学习这些操作之前,你必须在你的系统上安装这个数据库,你可以按照这个有用的教程来方便地做到这一点,它提供了在 Linux Mint 20 上安装 MongoDB 的完整指南。一旦你按照这个教程,你可以很容易地学习使用 MongoDB 中的表,我们将在今天的文章中进行解释。
在 MongoDB 中使用表:
在开始使用 MongoDB 中的表之前,我们想告诉您 MongoDB 中的表实际上被称为“集合”。 这些集合的列或属性称为“字段”,而这些集合的行或记录称为“文档”。 这里要注意的另一点是,您需要特别注意语法,因为任何语法错误都会导致您的查询失败,最糟糕的是,MongoDB shell 上没有显示有关确切错误的详细信息,因此,您将不得不手动计算出来,这是一项非常复杂的任务。 现在我们将向您展示不同的示例,借助这些示例,您将了解如何在使用 Linux Mint 20 时在 MongoDB 中处理表或集合。
第 1 步:验证 MongoDB 是否安装在您的 Linux Mint 20 系统上:
要在 MongoDB 中使用任何东西,您需要在 Linux Mint 20 系统上安装 MongoDB。 您可以通过在终端中运行以下命令来验证这一点:
mongo --version
运行此命令将显示 MongoDB 的版本,这表明它已安装在您的系统上,如下图所示:
步骤#2:进入 MongoDB Shell:
MongoDB 有一个专用的 shell,我们可以通过它使用 MongoDB。 因此,在创建任何数据库并开始使用它之前,我们需要通过在终端中运行以下命令进入 MongoDB shell:
mongo
运行此命令将立即将您带到 MongoDB shell,如下图所示:
步骤#3:创建数据库:
在 MongoDB 中创建数据库非常简单。 您所要做的就是在您的 MongoDB shell 中运行以下命令:
> use NameOfDatabase
在这里,您需要将 NameOfDatabase 替换为您想要的数据库名称。 我们将数据库命名为 SampleDB。
一旦此命令成功创建了一个新数据库,您将自动能够访问它,因为 MongoDB shell 将从其默认数据库切换到您新创建的数据库,如下图所示。 这意味着现在,您将执行的任何操作都将在您新创建的数据库上执行。
步骤#4:创建一个集合:
现在我们将尝试通过在 MongoDB shell 中运行以下命令在新创建的 SampleDB 中创建集合或表:
> db.createCollection(“CollectionName”)
在这里,您需要将 CollectionName 替换为您想要的收藏名称。 我们已将我们的集合命名为 samplecollection。
如果此命令将成功创建集合,那么您将收到一条 { “ok” : 1 } 成功消息,如下图所示:
此外,您还可以通过在 MongoDB shell 中运行以下命令来验证是否已创建集合:
> show collections
此命令用于显示已在特定数据库中创建的所有集合的名称。 由于在我们的例子中,我们只创建了一个集合,即 samplecollection,因此,它的名称将显示在我们的 MongoDB shell 上,如下图所示:
步骤#5:在集合中插入文档:
现在我们将尝试通过在 MongoDB shell 中运行以下查询来将一些记录或文档插入到我们的示例集合中:
> db.CollectionName.insertMany([ { name:”John”, age:24, gender:”Male” }, { name:”Leena”, age:22, gender:”Female” }, { name:”Harry”, age27, gender:”Male” } ]}
在这里,您需要将 CollectionName 替换为您的特定集合的名称。 在我们的 example、“姓名”、“年龄”和“性别”是我们表或集合的三个字段或列,而记录或文档用大括号括起来并用逗号分隔。 这意味着我们在此共有 3 条记录或文件 example. 但是,如果要添加单个文档或记录,则不要使用“insertMany”命令,而是使用简单的“insert”命令。
如果此查询将成功执行,您将收到一条确认消息。 此外,新插入的记录或文档的 objectID 将返回,如下图所示:
第 6 步:查看集合中的文档:
现在,当我们在集合中插入数据时,我们将尝试查看它。 在 SQL 中,我们可以使用“SELECT”命令查看表中的数据,而在 MongoDB 中,我们通过以下方式使用“find”命令:
> db.CollectionName.find( {} )
在这里,您需要将 CollectionName 替换为您的特定集合的名称,在我们的例子中是 samplecollection。
运行此查询将返回您刚刚插入到集合中的所有文档,如下图所示:
除了查看所有文档之外,您还可以通过以下方式运行“查找”命令来查找集合中的特定文档或记录:
> db.CollectionName.find({name:”Leena”})
在这里,您需要将 CollectionName 替换为您的特定集合的名称。 在这个 example,我们想查找名称为“Leena”的文档。 在我们的案例中,您可以选择按任何字段或属性(例如年龄或性别)进行搜索。 在任何一种情况下,都将返回相同的文档或记录,如下图所示:
第 7 步:更新集合中的文档:
查看集合中的文档后,我们现在将学习使用“update”命令以下列方式更新任何特定文档:
> db.CollectionName.update( { name:”Leena”}, { $set: { age:20 } } )
在这里,您需要将 CollectionName 替换为您的特定集合的名称。 在我们之前输入的记录或文件中,Leena 的年龄被设置为“22”。 现在我们尝试通过执行上面显示的查询将其更改为“20”。
如果此查询成功执行,即我们的文档更新成功,则下图所示的输出将显示在您的 MongoDB shell 上:
我们还可以通过运行以下命令来验证我们的“更新”查询是否更新了 Leena 的年龄:
> db.CollectionName.find({name:”Leena})
运行此命令将显示名称为“Leena”的文档。 在本文档中,您将能够看到她的年龄已更新为“20”,如下图所示:
第 8 步:从集合中删除文档:
我们将学习执行的下一个操作是从集合中删除记录或文档。 这可以通过以下方式运行“删除”命令来完成:
> db.CollectionName.remove( { name:”Harry” } )
在这里,您需要将 CollectionName 替换为您的特定集合的名称。 在这个 example,我们想删除名称为“Harry”的文档。
如果此查询成功执行,则下图所示的输出将显示在我们的 MongoDB shell 上:
我们还可以通过运行以下命令查看我们集合的所有文档来验证我们指定的文档是否已被删除:
> db.CollectionName.find( {} )
运行此命令将显示所有剩余的文档,但名称为“Harry”的文档将不再显示,因为它已被删除,如下图所示:
步骤#9:删除集合:
最后,我们将尝试通过执行以下查询来删除我们的集合或表:
> db.CollectionName.drop()
在这里,您需要将 CollectionName 替换为要删除的集合的名称,在我们的例子中是 samplecollection。
如果此查询成功执行,即我们的 samplecollection 已成功删除,那么我们的 MongoDB shell 上将显示一条“true”消息,如下图所示:
我们可以通过运行以下命令显示所有集合来进一步验证我们的集合是否已被删除:
> show collections
由于我们只有一个集合并且它也已被删除,因此,运行上述命令只会将控制权交还给我们,而不会显示任何输出,如下图所示:
结论:
本文向您介绍了可以对 MongoDB 表或集合执行的所有基本操作。 通过遵循完全相同的语法和操作,您甚至可以编写其他复杂的查询,这些查询可以轻松地满足您的特定任务的目的。