MongoDB中間件工具mgm入門介紹(二)

      網友投稿 1076 2022-05-30

      MongoDB中間件工具mgm入門介紹(二)

      目錄

      前言

      正文

      步驟一、導入mgm

      步驟二、創建數據庫模型

      步驟三、增刪改查操作

      結尾

      往期推薦博文:MongoDB中間件工具mgm入門介紹(一)

      前言

      眾所周知,MongoDB 是一個通用、基于文檔的分布式數據庫,非常適合云原生服務的應用場景。上一篇文章已經簡單介紹了 MongoDB 數據庫的中間件工具 mgm,今天就來聊一聊 mgm 的接口使用方法。

      正文

      步驟一、導入mgm

      導入 mgm 工具包,設置默認配置項,代碼參考如下:

      import ( "github.com/kamva/mgm/v3" "go.mongodb.org/mongo-driver/mongo/options" ) func init() { err := mgm.SetDefaultConfig(nil, "mgm_test", options.Client().ApplyURI("mongodb://root:12345@localhost:27017")) }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      步驟二、創建數據庫模型

      創建一個人的數據庫模型,包括名字name、年齡age,這個過程也非常簡單,只需要簡單的聲明,就能夠被數據庫識別。代碼參考如下:

      type Person struct { // DefaultModel adds _id, created_at and updated_at fields to the Model mgm.DefaultModel `bson:",inline"` Name string `json:"name" bson:"name"` Age int `json:"age" bson:"age"` } func NewPerson(name string, age int) *Person { return &Person{ Name: name, Age: age, } }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      步驟三、增刪改查操作

      我們插入一條數據庫記錄,用戶名字是 liuzhen007,年齡是 30,代碼參考如下:

      // 創建一條記錄 person := NewPerson("liuzhen007", 30) // 寫入數據庫 err := mgm.Coll(person).Create(person) if err != nil { fmt.Println("數據庫插入失敗", err) }

      1

      2

      3

      4

      5

      6

      7

      我們查找名字為 liuzhen007 的用戶記錄,代碼參考如下:

      // 獲取數據庫集合 person := &Person{} coll := mgm.Coll(person) // 查找名字為 liuzhen007 的記錄 _ = coll.First(bson.M{"name": "liuzhen007"}, person)

      1

      2

      3

      4

      5

      6

      除此之外,還有兩種查詢方式,比如根據具體的ID進行查詢,代碼參考如下:

      _ = coll.FindByID("5e0518aaliuzhen0079410ee3", person)

      1

      還有可以直接查詢數據庫中的第一條記錄,代碼參考如下:

      _ = coll.First(bson.M{}, person)

      1

      我們把數據庫中名字為 liuzhen007 的用戶的年齡改為 31,但是,這個更新過程首先要查找到對應的數據庫記錄,這樣就用到了我們上面講到的查詢記錄接口。代碼參考如下:

      // 先找到對應的記錄 _ = coll.First(bson.M{"name": "liuzhen007"}, person) // 然后更新年齡 person.Age = 31 err := mgm.Coll(person).Update(person)

      1

      2

      3

      4

      5

      6

      現在,我們來刪除一條數據庫記錄,同樣在刪除前,我們首先要找到這條記錄,這是一個非常符合實際開發流程的操作,如果數據庫中沒有對應的記錄,在進行刪除和更新操作時,可能會導致很多意想不到的問題,代碼代碼如下:

      // 先找到對應的記錄 _ = coll.First(bson.M{"name": "liuzhen007"}, person) // 然后刪除記錄 err := mgm.Coll(person).Delete(person)

      1

      2

      3

      4

      5

      結尾

      好了,今天關于 mgm 處理 MongoDB 數據庫增刪改查操作的方法就介紹完了,當然 mgm 還有很多更加高級的玩法,我們下期再進行介紹。大家好,我是 liuzhen007(Data-Mining),歡迎關注,分享更多服務器和數據庫的內容知識。

      MongoDB 數據庫

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:HBase2.0.2升級HBase2.2.7遇到的問題及處理方法
      下一篇:物聯網前期低谷泡沫與后續數字化崛起支點
      相關文章
      亚洲国产精品第一区二区三区| 7777久久亚洲中文字幕| 亚洲成AV人片在WWW| 亚洲电影免费观看| 亚洲精品成人片在线观看精品字幕 | 亚洲国产高清国产拍精品| 亚洲男人天堂2018av| 亚洲AV一二三区成人影片| 亚洲一区二区三区不卡在线播放| 亚洲成人福利网站| 亚洲天堂在线播放| 4480yy私人影院亚洲| 91在线精品亚洲一区二区| 亚洲视频一区在线观看| 亚洲美免无码中文字幕在线| 亚洲美女视频一区二区三区| 亚洲成人免费网址| 亚洲娇小性xxxx色| 亚洲中文字幕久久无码| 亚洲女女女同性video| 亚洲av日韩av永久无码电影| 国产成人高清亚洲一区久久| 亚洲第一页综合图片自拍| 亚洲人午夜射精精品日韩| 国产精品亚洲玖玖玖在线观看| 国产亚洲福利一区二区免费看| 亚洲国产综合人成综合网站| 国产成人综合亚洲| 亚洲AV日韩精品一区二区三区| 九月婷婷亚洲综合在线| 亚洲精品无码你懂的网站| 国产专区一va亚洲v天堂| 国产自偷亚洲精品页65页| 久久亚洲国产中v天仙www| 91嫩草私人成人亚洲影院| 国产精品亚洲午夜一区二区三区| 亚洲中文字幕无码久久2020| 亚洲AV日韩AV永久无码色欲| 国产福利电影一区二区三区,亚洲国模精品一区 | 亚洲精品无码一区二区| 国产成人亚洲综合a∨|