在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何在mongodb中使用golang驱动

111次阅读
没有评论

共计 3214 个字符,预计需要花费 9 分钟才能阅读完成。

自动写代码机器人,免费开通

如何在 mongodb 中使用 golang 驱动?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

使用教程如下:

导入

go get github.com/mongodb/mongo-go-driver/mongo

链接 mongo 服务

if client, err = mongo.Connect(getContext(), url); err != nil { checkErr(err)
 }

判断服务是否可用

if err = client.Ping(getContext(), readpref.Primary()); err != nil { checkErr(err)
 }

选择数据库和集合

collection = client.Database(testing_base).Collection(howie)

删除这个集合

collection.Drop(getContext())

插入一条数据

if insertOneRes, err = collection.InsertOne(getContext(), howieArray[0]); err != nil { checkErr(err)
 }
 fmt.Printf(InsertOne 插入的消息 ID:%v\n , insertOneRes.InsertedID)

批量插入数据

if insertManyRes, err = collection.InsertMany(getContext(), howieArray); err != nil { checkErr(err)
 }
 fmt.Printf(InsertMany 插入的消息 ID:%v\n , insertManyRes.InsertedIDs)

查询单条数据

if err = collection.FindOne(getContext(), bson.D{{name ,  howie_2}, {age , 11}}).Decode(howie); err != nil { checkErr(err)
 }
 fmt.Printf(FindOne 查询到的数据:%v\n , howie)

查询单条数据后删除该数据

if err = collection.FindOneAndDelete(getContext(), bson.D{{name ,  howie_3}}).Decode(howie); err != nil { checkErr(err)
 }
 fmt.Printf(FindOneAndDelete 查询到的数据:%v\n , howie)

询单条数据后修改该数据

if err = collection.FindOneAndUpdate(getContext(), bson.D{{name ,  howie_4}}, bson.M{$set : bson.M{ name :  这条数据我需要修改了}}).Decode(howie); err != nil { checkErr(err)
 }
 fmt.Printf(FindOneAndUpdate 查询到的数据:%v\n , howie)

查询单条数据后替换该数据 (以前的数据全部清空)

if err = collection.FindOneAndReplace(getContext(), bson.D{{name ,  howie_5}}, bson.M{hero :  这条数据我替换了}).Decode(howie); err != nil { checkErr(err)
 }
 fmt.Printf(FindOneAndReplace 查询到的数据:%v\n , howie)

一次查询多条数据 (查询 createtime =3, 限制取 2 条,createtime 从大到小排序的数据)

if cursor, err = collection.Find(getContext(), bson.M{createtime : bson.M{ $gte : 2}}, options.Find().SetLimit(2), options.Find().SetSort(bson.M{ createtime : -1})); err != nil { checkErr(err)
 }
 if err = cursor.Err(); err != nil { checkErr(err)
 }
 defer cursor.Close(context.Background())
 for cursor.Next(context.Background()) { if err = cursor.Decode( howie); err != nil { checkErr(err)
 }
 howieArrayEmpty = append(howieArrayEmpty, howie)
 }
 fmt.Printf(Find 查询到的数据:%v\n , howieArrayEmpty)

查询集合里面有多少数据

if size, err = collection.Count(getContext(), nil); err != nil { checkErr(err)
 }
 fmt.Printf(Count 里面有多少条数据:%d\n , size)

查询集合里面有多少数据 (查询 createtime = 3 的数据)

if size, err = collection.Count(getContext(), bson.M{createtime : bson.M{ $gte : 3}}); err != nil { checkErr(err)
 }
 fmt.Printf(Count 里面有多少条数据:%d\n , size)

修改一条数据

if updateRes, err = collection.UpdateOne(getContext(), bson.M{name :  howie_2}, bson.M{$set : bson.M{ name :  我要改了他的名字}}); err != nil { checkErr(err)
 }
 fmt.Printf(UpdateOne 的数据:%d\n , updateRes)

修改多条数据

if updateRes, err = collection.UpdateMany(getContext(), bson.M{createtime : bson.M{ $gte : 3}}, bson.M{$set : bson.M{ name :  我要批量改了他的名字}}); err != nil { checkErr(err)
 }
 fmt.Printf(UpdateMany 的数据:%d\n , updateRes)

删除一条数据

if delRes, err = collection.DeleteOne(getContext(), bson.M{name :  howie_1}); err != nil { checkErr(err)
 }
 fmt.Printf(DeleteOne 删除了多少条数据:%d\n , delRes.DeletedCount)

删除多条数据

if delRes, err = collection.DeleteMany(getContext(), bson.M{createtime : bson.M{ $gte : 7}}); err != nil { checkErr(err)
 }
 fmt.Printf(DeleteMany 删除了多少条数据:%d\n , delRes.DeletedCount)

看完上述内容,你们掌握如何在 mongodb 中使用 golang 驱动的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计3214字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 午夜影院在线观看 | 亚洲精品无码aⅴ中文字幕蜜桃 | 色婷婷狠狠五月综合天色拍 | 亚洲国产系列久久精品99人人 | 国产日产韩国精品视频 | 伊人成色综合网 | 国产精品无码免费播放 | 男女免费爽爽爽在线视频 | 久久久久国产精品无码免费看 | 99热这里只有精品国产99 | 内射毛片内射国产夫妻 | 欧美乱人伦中文字幕在线不卡 | 亚洲综合色无码 | 午夜一级毛片免费视频 | 成人亚洲欧美激情在线电影 | 欧美久久综合性欧美 | 自拍偷拍在线播放 | 国产亚洲高清视频 | 一级黄a | 国产精品久久久久久福利69堂 | 高清激情小视频在线观看 | 国产精品手机免费 | 亚洲欧洲自拍偷拍 | 久久久精品在观看999 | 免费毛片播放 | 成人免费看吃奶视频网站 | 亚洲欧美日韩高清一区二区三区 | 67194熟妇在线永久免费观看 | 99热日韩| 精久国产av一区二区三区孕妇 | 毛片免费全部播放一级 | 成人在线精品视频 | 91网站免费观看 | 免费国产黄网站在线观看视频 | 日韩在线二区全免费 | 一本一道波多野结衣一区 | 精品无码国产一区二区三区51安 | 天堂在线最新版资源www | 亚洲av中文无码乱人伦在线r▽ | 国模无码视频一区 | 亚洲国产精品va在线看黑人 |