zoukankan      html  css  js  c++  java
  • mgo操作mongodb

    mgo基本使用:

    http://labix.org/mgo

    安装

    # go get gopkg.in/mgo.v2
    
    package main
    
    import (
            "fmt"
    	"log"
            "gopkg.in/mgo.v2"
            "gopkg.in/mgo.v2/bson"
    )
    
    type Person struct {
            Name string
            Phone string
    }
    
    func main() {
    		//mongodb连接uri
    		//格式为[mongodb://][user:pass@]host1[:port1][,host2[:port2],...][/database][?options]
            session, err := mgo.Dial("mongodb://cord:123456@127.0.0.1:27010/keymap")
            if err != nil {
                    panic(err)
            }
            defer session.Close()
    
            // Optional. Switch the session to a monotonic behavior.
            session.SetMode(mgo.Monotonic, true)
    
            c := session.DB("test").C("people")
            
            //增加记录
            err = c.Insert(&Person{"Ale", "+55 53 8116 9639"},
    	               &Person{"Cla", "+55 53 8402 8510"})
            if err != nil {
                    log.Fatal(err)
            }
            result := Person{}
            //普通查询
            err = c.Find(bson.M{"name": "Ale"}).One(&result)
            //正则匹配(模糊查询),其中"$options":"$i"表示忽略大小写
            //regexStr = "A" 
            //err = c.Find(bson.M{"name":bson.M{"$regex" : regexStr, "$options":"$i"}}).All(&result)
            if err != nil {
                    log.Fatal(err)
            }
            fmt.Println("Phone:", result.Phone)
            
            //删除记录
            err = c.Remove(bson.M{"name":"Ale"})  //删除单条,如果有多条,默认顺序第一条
    	    _, err = c.RemoveAll(bson.M{"name":"Ale"}) //删除所有查找的
    	    if err != nil {
    		  fmt.Println(err)
    	    }
    }
    
  • 相关阅读:
    点赞
    js点击事件,数字累加
    html中hr的各种样式使用
    基于Bootstrap垂直响应的jQuery时间轴特效
    bootstrop日历
    前端经验
    bootstrop登陆页面
    bootstrop设置背景图片自适应屏幕
    建立博客的第一天
    php伪静态--隐藏地址实际路径方法
  • 原文地址:https://www.cnblogs.com/cord/p/9351016.html
Copyright © 2011-2022 走看看