func Example() { c, err := mongodb.Dial("localhost", 10) if err != nil { fmt.Println(err) return } defer c.Close() // session s := c.Ref() defer c.UnRef(s) err = s.DB("test").C("counters").RemoveId("test") if err != nil && err != mgo.ErrNotFound { fmt.Println(err) return } // auto increment //创建自增字段 err = c.EnsureCounter("test", "counters", "test") if err != nil { fmt.Println(err) return } //增长自增字段 for i := 0; i < 3; i++ { id, err := c.NextSeq("test", "counters", "test") if err != nil { fmt.Println(err) return } fmt.Println(id) } // index c.EnsureUniqueIndex("test", "counters", []string{"key1"}) // Output: // 1 // 2 // 3 }
func init() { // mongodb if conf.Server.DBMaxConnNum <= 0 { conf.Server.DBMaxConnNum = 100 } db, err := mongodb.Dial(conf.Server.DBUrl, conf.Server.DBMaxConnNum) if err != nil { log.Fatal("dial mongodb error: %v", err) } mongoDB = db // users err = db.EnsureUniqueIndex("game", "users", []string{"accid"}) if err != nil { log.Fatal("ensure index error: %v", err) } err = db.EnsureCounter("game", "counters", "users") if err != nil { log.Fatal("ensure counter error: %v", err) } }