搜索
首页系统教程MAC如何使用MongoDB

如何使用MongoDB

Apr 12, 2025 am 09:27 AM

如何使用MongoDB

MongoDB是面向文档的NOSQL数据库。如果您想在Golang项目中使用它,好消息 - MongoDB确实支持Golang!遵循有关将GO和MongoDB连接的教程以及涉及两者的项目的开发项目。

在下面的文章中,我们准确地描述了如何在GO中设置您的蒙古德。另外,我们展示了如何运行数据库中的一些基本CRUD操作。

要遵循此Golang的步骤 - MongoDB教程,您需要在Mac上安装,因此请确保在开始之前拥有它。

为MongoDB安装GO驱动程序

为了将MongoDB与GO一起使用,您需要一个相应的驱动程序。幸运的是,MongoDB提供了该过程的官方文件。让我们一起浏览所有步骤。

免责声明:在这篇文章中,我们仅涵盖GO司机,其他MongoDB司机,请检查正式文档。

要开始使用MongoDB,请在新目录中使用GO MOD初始化项目。这是终端命令:

Mkdir Go-Quickstart
CD Go-Quickstart
Go Mod Init Go-Quickstart

接下来,使用go get命令添加mongoDB依赖性:

Go go.mongodb.org/mongo-driver/mongo

现在,您准备在MongoDB帐户中创建数据库群集。为此,您需要加入MongoDB地图集。这是一个很好的解决方案,可以在Golang的Mongodb弄湿您的脚,因为它具有自由层,并托管在云中。

连接MongoDB Golang驱动程序所需的操作是创建一个Atlas帐户(您只需通过Google帐户登录),部署免费群集,将IP添加到允许的连接列表中,为已部署的群集创建数据库用户,连接到群集到群集,然后开始使用数据。

如何使用MongoDB

从https://account.mongodb.com/account/register上进行注册,仔细阅读以下步骤。如果您遇到任何打ic,这是每个步骤的官方指南。

这些都不需要代码,您应该能够完成地图集接口中的操作。完成此步骤后,我们可以在MongoDB Go驱动程序的帮助下继续进行设置以连接到MongoDB数据库群集。

请注意,当您连接到群集时,需要选择“连接到应用程序” ,然后在下一页上复制连接字符串以添加到应用程序代码:

如何使用MongoDB

复制摘要以稍后在代码编辑器中使用。我们希望将代码位保存在Stippetslab中,这是一个专用的应用程序,可以托管代码片段的库。

如何使用MongoDB

记住要替换在摘要中,带有您在Atlas注册时创建的数据库密码。我们建议在安全位置保存您的登录凭据。

我们使用App Secret保存我们的MongoDB群集登录凭据:

如何使用MongoDB

现在,创建并保存包含您的应用程序的文件中的文件中的文件夹文件夹(您可以为项目文件夹使用其他名称,但请确保您在早期步骤中提供的代码中进行了各自的更改)。

我们正在CodeRunner开发此项目,该项目允许您以25种以上的语言(包括GO)保存,编辑和运行代码。因此,要编写我们的程序,我们使用MongoDB的示例代码从本官方教程中创建了Main.go,然后将文件放入我们的root文件夹中以供项目 /go-quickStart。

如何使用MongoDB

这是我们使用的代码:

包装主
进口 (
    “语境”
    “编码/JSON”
    “ FMT”
    “日志”
    “ OS”
    “ github.com/joho/godotenv”
    “ go.mongodb.org/mongo-driver/bson”
    “ go.mongodb.org/mongo-driver/mongo”
    “ go.mongodb.org/mongo-driver/mongo/options”
)
func main(){
    如果err:= godotenv.load(); err!= nil {
        log.println(“找到的.env文件”)
    }
    uri:= os.getenv(“ mongodb_uri”)
    如果uri ==” {
        log.fatal(“您必须设置'mongodb_uri'环境变量。请参阅\ n \ t https://docs.mongodb.com/drivers/go/current/current/usage-usage-examples/#environmples/#environmples-variond-variormable”)
    }
    客户端,err:= mongo.connect(context.todo(),options.client()。appluri(uri))
    如果err!= nil {
        恐慌(err)
}
    defer func(){
        如果err:= client.disconnect(context.todo()); err!= nil {
            恐慌(err)
    }
}()
    coll:= client.database(“ sample_mflix”)。集合(“电影”)
    标题:=“回到未来”
    变量结果BSON.M
    err = coll.findone(context.todo(),bson.d {{“ title”,title}})。decode(&result)
    如果err == mongo.errnodocuments {
        fmt.printf(“未找到标题%s \ n”,标题)
        返回
    }
    如果err!= nil {
        恐慌(err)
    }
    jsondata,err:= json.marshalindent(结果,“”,“”)
    如果err!= nil {
        恐慌(err)
    }
    fmt.printf(“%s \ n”,jsondata)
}

现在,为了成功运行此代码,您还需要应用程序的根文件夹中的.env文件(在我们的示例中/go-quickStart)。

要创建一个空的.env文件,我们使用了此终端命令:

触摸.env

接下来,我们将连接字符串添加到带有一系列终端命令的.env文件中:

  1. 在终端执行VIM .env。
  2. 使用以下方式设置Mongodb_uri的值
    mongodb_uri =“ mongodb srv:// <username>:<password>@cluster0.icb48.mongodb.net/myfirstdatabase?retrywrites?retrywrites = true&w =多数  </password></username>
  3. 执行:WQ!命令。
  4. 在终端中执行CAT .ENV检查您的更改已正确保存。您的.env文件应读取:
    mongodb_uri =“ mongodb srv:// <username>:<password>@cluster0.icb48.mongodb.net/myfirstdatabase?retrywrites?retrywrites = true&w =多数  </password></username>

现在,您准备使用命令进行MongoDB数据库ping:

去运行main.go

如果您按照ATLAS帐户设置的步骤中的指示加载了示例数据库,则应从该示例数据库中获得包含信息的响应。

在我们的示例中,我们在好莱坞电影中从MongoDB图书馆获得了信息:

如何使用MongoDB

MongoDB Crud操作

要在MongoDB执行CRUD操作,您需要导入BSON软件包。由于我们用于上面的GO程序示例的代码(来自MongoDB官方教程),因此您不必手动执行此操作。

但是,如果您正在写自己的东西,那么导入的行是:

“ go.mongodb.org/mongo-driver/bson”

现在,让我们在样本MongoBD数据库中阅读一些数据。

在MongoDB中阅读文档

这是您需要添加到main的代码。go以要求有关房间电影的信息请求:

coll:= client.database(“ sample_mflix”)。集合(“电影”)
变量结果BSON.M
err = coll.findone(context.todo(),bson.d {{“ title”,“ the the the the the the the the}})。decode(&result)
如果err!= nil {
    如果err == mongo.errnodocuments {
        //此错误意味着您的查询与任何文档都不匹配。
        返回
    }
    恐慌(err)
}

您也可以在此处的官方MongoDB教程中复制示例main.go文件的完整代码。

接下来,让我们转到写作操作。

在MongoDB中创建文档

使用此代码将文档添加到您的集合中:

coll:= client.database(“ insertdb”)。集合(“电影”)
doc:= = bson.d {{“ title”,“ 1672”},{“ text”,“这只是一个测试”}}}
结果,err:= coll.insertone(context.todo(),doc)
如果err!= nil {
    恐慌(err)
}

此页面的官方MongoDB教程中可用的完整示例代码。

运行您的代码并获得确认您的文档已插入:

如何使用MongoDB

要检查,请运行查询。您应该回馈示例信息:

如何使用MongoDB

另请阅读:

  • 与MySQL一起使用
  • 将Redis用作数据库
  • Mac的最佳开发人员工具
  • git客户端Mac

在MongoDB中更新文档

现在,您可以向数据库记录介绍更改。为此,请使用更新工具。

这是一个示例代码:

coll:= client.database(“ insertdb”)。集合(“电影”)
id,_:= primitive.ObjectIdFromHex(“ 6205210BC9748A7CEE6AF8CB”)
过滤器:= BSON.D {{“ _ ID”,ID}}
更新:= = bson.d {{“ $ set”,bson.d {{“平均_rtng”,4.5}}}}}}}}
结果,err:= coll.updateone(context.todo(),过滤器,更新)
如果err!= nil {
    恐慌(err)
}

运行更新的程序代码后的结果应读取:文档更新:1

运行查询进行测试。这是您的结果外观(请注意,我们进行了很多更新以重新检查代码,因此我们的结果包含的信息比以上更新更多的信息):

如何使用MongoDB

在MongoDB中删除文档

最后,让我们看看如何从MongoDB数据库中删除文档。

此代码将删除您集合中的第一个匹配标题:

coll:= client.database(“ insertdb”)。集合(“电影”)
过滤器:= bson.d {{“标题”,“您新更新的标题”}}
结果,err:= coll.deleteone(context.todo(),filter)
如果err!= nil {
    恐慌(err)
}

如何使用MongoDB

结论

如您所见,设置MongoDB数据库与Golang一起工作只需几行代码。我们希望本教程对掌握Golang和MongoDB数据库的旅程有所帮助。 Go and MongoDB一起工作很棒,可以成为许多项目中的方便助手,因此我们希望您能够在本指南的帮助下弄清楚如何使用MongoDB。

请注意,MongoDB地图集只允许您创建一个免费的群集,您必须为任何其他群集付费。

对于我们的项目,我们还使用了三个其他应用程序 - CodeRunner,SnippetSlab和Secrets。您可以在Setapp中找到它们,Setapp是一项精心策划的工具服务,可用于日常生产力和自动化日常任务。

发现用于编码,清理Mac,备份文件以及有关SetApp的更多工具。从现在开始的7天免费试用期开始,然后尝试CodeRunner,SnippetSlab,Secrets和数十个工具。

以上是如何使用MongoDB的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何减少Windowser Mac CPU使用如何减少Windowser Mac CPU使用Apr 16, 2025 pm 12:07 PM

MACOS Windowser:了解高CPU使用和解决方案 您是否注意到Windowser在Mac上消耗了大量CPU资源? 此过程对于Mac的图形接口至关重要,渲染了您在屏幕上看到的所有内容。 高c

Mac的最佳剪切工具Mac的最佳剪切工具Apr 16, 2025 am 11:57 AM

屏幕截图无处不在,但是我们很少考虑他们展示,解释和交流的能力。 从报告软件错误到共享快速的操作方法或有趣的图像,屏幕截图丰富了我们的日常互动。 当Windows用户依靠S

如何在Mac上转换视频和音频:终极指南如何在Mac上转换视频和音频:终极指南Apr 16, 2025 am 11:39 AM

音频文件格式繁多,令人眼花缭乱。管理起来很麻烦,当您尝试播放音频但喜欢的播放器因文件类型而无法播放特定文件时,就会非常令人沮丧。 这似乎令人绝望,但别担心!您通常可以在不损失质量的情况下转换音频和视频文件。在这里,我们将引导您完成如何将视频转换为MP3、MP4转换为MP3以及许多其他有用的音频和视频转换。 轻松转换视频和音频 使用专业的媒体转换器Permute节省查找文件转换工具的时间。 免费试用 安全可靠! 如何将视频转换为音频 例如,将视频转换为音频(例如MP4转换为MP3)与其说是转换视

如何从Mac中删除OneDrive?如何在Apple笔记本电脑上卸载它?如何从Mac中删除OneDrive?如何在Apple笔记本电脑上卸载它?Apr 16, 2025 am 11:02 AM

OneDrive for Mac:综合卸载指南 Microsoft的Cloud Storage Service OneDrive提供在线文件存储和包括Mac在内的各个平台的同步。 但是,您可能需要将其删除以进行存储优化,Inc

在Mac上使用Tiktok的方法在Mac上使用Tiktok的方法Apr 16, 2025 am 10:57 AM

间谍软件清除指南:如何在几秒钟内摆脱Mac上的间谍软件间谍软件清除指南:如何在几秒钟内摆脱Mac上的间谍软件Apr 16, 2025 am 10:56 AM

Mac电脑并非绝对安全:抵御恶意软件的实用指南 你可能听说过Mac电脑不会感染恶意软件,无需购买杀毒软件。虽然有一定道理,但这说法具有误导性。 与Windows相比,Mac电脑的安全性确实更高,这主要归功于其操作系统架构。但这并不意味着它们坚不可摧。各种恶意软件,从恶意脚本到病毒和间谍软件,仍然有机会入侵你的Mac。 间谍软件尤其值得关注,因为它可能对你的Mac和个人信息造成严重损害。让我们来了解一下什么是间谍软件以及如何从Mac中删除间谍软件。 什么是间谍软件? 从根本上说,间谍软件是一种恶意

将YouTube转到GIF:将YouTube视频转换为GIF的4种最佳工具将YouTube转到GIF:将YouTube视频转换为GIF的4种最佳工具Apr 16, 2025 am 09:54 AM

GIF动图制作指南:轻松将YouTube视频转换为GIF GIF动图是捕捉瞬间、表达情感或为对话增添趣味的完美方式。但如何将YouTube视频转换为GIF呢?这曾经感觉像是一项全新的挑战,直到我亲身体验才发现它有多么简单。本指南将向您展示如何将喜爱的YouTube视频轻松制作成精彩的GIF动图。让我们开始吧! 几步轻松搞定YouTube视频转GIF Gifox软件能轻松将屏幕录制成GIF动图。可在Setapp平台获取。 免费试用 安全测试 我的需求操作步骤将YouTube视频制作为GIF安装并

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。