用于在 Visual Studio Code 上操作 MongoDB 的方便扩展功能
关于这篇文章
在这篇文章中,我们将解释在Visual Studio Code中如何连接以下数据库并确认值的方法。
-
- MongoDB
- Azure Cosmos DB API for MongoDB
我认为在传统的开发环境中,通常需要同时启动不同于编码位置的应用程序,比如Mongo Express等。在编码过程中,如果想要访问数据库,启动和切换到其他应用程序会让人感到麻烦且浪费时间。
只需使用Visual Studio Code,就可以不仅进行编码,还可以查看数据库的值,这样可以减少在开发过程中需要启动和切换多个应用程序的一些小麻烦。
Visual Studio Code的擴充功能
这次要使用的扩展功能是这个。
-
- MongoDB for VS Code
https://github.com/mongodb-js/vscode

另外,您也可以使用以下扩展功能来连接到 Azure Cosmos DB 的 MongoDB API。请选择您喜欢的任一方法进行使用。
- Visual Studio Code 上で PostgreSQL と Cosmos DB を操作するための便利な拡張機能
顺便提一下,与上述解释的扩展功能不同,使用这个扩展功能的好处是可以同时显示MongoDB和Azure Cosmos DB API for MongoDB的环境,都在一个地方。(个人观点)

连接到MongoDB
安装扩展功能后,将会显示MongoDB选项卡。

选择 CONNECTIONS 栏中的 “添加连接”,创建一个 MongoDB 的连接配置文件。

可以通过按下[Ctrl] + [Shift] + [P] (macOS的情况下是[Command] + [Shift] + [P])来显示命令面板,然后选择MongoDB: Connect来进行相应操作。

在新标签页中,将显示一个输入连接信息的界面,请输入连接信息。
完成输入后,请选择Connect。

如果连接成功,将显示以下连接成功的消息。

如果连接成功,就关闭标签。
请确认在连接栏中显示创建的连接配置文件,并确认已连接到数据库(Connected)。

创建数据库
选择 CONNECTIONS 栏中的 +按钮,或选择右键菜单中的 Add Database…。


請輸入欲創建的新資料庫名稱。

请键入要创建的集合名称。

当创建完成后,您可以在树中确认已经新建了数据库和集合。

连接到Cosmos DB
在Azure门户等地方,获取并保存Cosmos DB的连接字符串。

在 CONNECTIONS 栏目中,选择“使用连接字符串添加 MongoDB 连接”。

您可以按下 [Ctrl] + [Shift] + [P](如果是 macOS,则按下 [Command] + [Shift] + [P])来显示命令面板,然后选择 MongoDB: Connect with Connection String… 来执行相应操作。

请将刚刚获取的Azure Cosmos DB API for MongoDB的连接字符串输入。

如果成功创建连接配置文件,Azure Cosmos DB API for MongoDB 的项目应该会被添加到树中。

执行查询
使用MongoDB Playground来进行数据的读取和写入。
如果尚未存在任何.mongodb文件,则会显示以下屏幕。
选择创建新的Playground,打开MongoDB Playground。

如果已经存在.mongodb文件,则文件将会像下面这样显示。

选择要使用的.mongodb文件。
如果要创建新的MongoDB Playground文件,请在PLAYGROUNDS栏的右侧选择…,然后选择Create MongoDB Playground。

您可以使用 [Ctrl] + [Shift] + [P](在 macOS 中为 [Command] + [Shift] + [P])组合键打开命令面板,然后选择 MongoDB: Create MongoDB Playground 来完成相应操作。

一旦显示了MongoDB Playground的选项卡,您只需要编写并执行MongoDB的查询即可。

当您选择并更改以下位于文件开头的部分时,您可以选择连接或更改 MongoDB。

执行查询时,将要执行的查询集选择为选定状态。
然后,在选择的查询集上方,显示▶️从Playground运行选定行,因此选择它。

在执行查询之前会显示确认对话框,选择“是”。
您也可以在扩展功能的设置中隐藏此显示。

查询执行结果会显示在输出选项卡的”Playground output”中。这里显示的是查询的最后一个执行结果。※ 截至 2020/10/21

然而,由于这个拓展功能还处于预览版,因此在结果显示方面还存在一些问题。希望未来的开发能够解决这些问题。
how to run only single command in play ground #109 – GitHub Issues