本文整理汇总了Golang中github.com/garyburd/go-mongo/mongo.Database.Run方法的典型用法代码示例。如果您正苦于以下问题:Golang Database.Run方法的具体用法?Golang Database.Run怎么用?Golang Database.Run使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/garyburd/go-mongo/mongo.Database
的用法示例。
在下文中一共展示了Database.Run方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: reset
// reset cleans up after previous runs of this applications.
func reset(conn mongo.Conn) {
log.Println("\n== Clear documents and indexes created by previous run. ==\n")
db := mongo.Database{conn, "learn", mongo.DefaultLastErrorCmd}
db.Run(mongo.D{{"profile", 0}}, nil)
db.C("unicorns").Remove(nil)
db.C("hits").Remove(nil)
db.Run(mongo.D{{"dropIndexes", "unicorns"}, {"index", "*"}}, nil)
db.Run(mongo.D{{"dropIndexes", "hits"}, {"index", "*"}}, nil)
}
示例2: chapter7
func chapter7(conn mongo.Conn) {
log.Println("\n== CHAPTER 7 ==")
db := mongo.Database{conn, "learn", mongo.DefaultLastErrorCmd}
unicorns := db.C("unicorns")
log.Println("\n== Create index on name. ==\n")
err := unicorns.CreateIndex(mongo.D{{"name", 1}}, nil)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Drop index on name. ==\n")
err = db.Run(mongo.D{
{"dropIndexes", unicorns.Name()},
{"index", mongo.IndexName(mongo.D{{"name", 1}})},
}, nil)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Create unique index on name. ==\n")
err = unicorns.CreateIndex(mongo.D{{"name", 1}}, &mongo.IndexOptions{Unique: true})
if err != nil {
log.Fatal(err)
}
log.Println("\n== Create compound index on name ascending and kills descending. ==\n")
err = unicorns.CreateIndex(mongo.D{{"name", 1}, {"vampires", -1}}, nil)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Explain query. ==\n")
var m mongo.M
err = unicorns.Find(nil).Explain(&m)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Explain query on name. ==\n")
m = nil
err = unicorns.Find(mongo.M{"name": "Pilot"}).Explain(&m)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Enable profiling. ==\n")
err = db.Run(mongo.D{{"profile", 2}}, nil)
if err != nil {
log.Fatal(err)
}
log.Println("\n== Get profile data for query. ==\n")
cursor, err := unicorns.Find(mongo.M{"weight": mongo.M{"$gt": 600}}).Cursor()
if err != nil {
log.Fatal(err)
}
expectFieldValues(cursor, "name", "Unicrom", "Ayna", "Kenny", "Leia", "Pilot", "Dunx")
cursor, err = db.C("system.profile").Find(nil).Cursor()
if err != nil {
log.Fatal(err)
}
for cursor.HasNext() {
var m mongo.M
err := cursor.Next(&m)
if err != nil {
log.Fatal(err)
}
}
cursor.Close()
log.Println("\n== Profile queries that take longer than 100 ms. ==\n")
err = db.Run(mongo.D{{"profile", 2}, {"slowms", 100}}, nil)
if err != nil {
log.Fatal(err)
}
}