當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Database.Run方法代碼示例

本文整理匯總了Golang中labix/org/v2/mgo.Database.Run方法的典型用法代碼示例。如果您正苦於以下問題:Golang Database.Run方法的具體用法?Golang Database.Run怎麽用?Golang Database.Run使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在labix/org/v2/mgo.Database的用法示例。


在下文中一共展示了Database.Run方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: IsTokuMX

// IsTokuMX determines if the server connected to is TokuMX.
func IsTokuMX(db *mgo.Database) bool {
	var result bson.M
	if err := db.Run("buildInfo", &result); err != nil {
		log.Fatal(err)
	}
	return result["tokumxVersion"] != nil
}
開發者ID:Tokutek,項目名稱:go-benchmark,代碼行數:8,代碼來源:utils.go

示例2: createMongoCollection

// creates a collection in MongoDB
func createMongoCollection(collname string, db *mgo.Database) {
	fmt.Println("creating collection: ", collname)
	var result bson.M
	createCmd := createCollOptions{Coll: collname}
	err := db.Run(createCmd, &result)
	if err != nil {
		log.Fatal(err)
	}
}
開發者ID:Tokutek,項目名稱:go-benchmark,代碼行數:10,代碼來源:create_collection.go

示例3: applyTokuIndexOptions

func applyTokuIndexOptions(db *mgo.Database, collname string, options tokuMXCreateOptions) {
	var result bson.M
	var optBson bson.M
	optBson = bson.M{"compression": options.CompressionType, "pageSize": options.NodeSize, "readPageSize": options.BasementSize}
	err := db.Run(bson.D{{"reIndex", collname}, {"index", "*"}, {"options", optBson}}, &result)
	if err != nil {
		log.Fatal("Failed to set options on indexes, received ", err)
	}
}
開發者ID:Tokutek,項目名稱:go-benchmark,代碼行數:9,代碼來源:create_collection.go

示例4: GetDbStats

// Returns a variety of database statistics.
//
// Based on
// http://docs.mongodb.org/manual/reference/command/dbStats/#dbcmd.dbStats
func GetDbStats(db *mgo.Database) (DbStats, error) {
	var output DbStats
	err := db.Run(bson.D{
		{"dbStats", 1},
		{"scale", 1},
	}, &output)

	if err != nil {
		return output, err
	}
	return output, nil
}
開發者ID:gabstv,項目名稱:go-mgoplus,代碼行數:16,代碼來源:mgoplus.go

示例5: GetCollectionStats

// Returns a variety of storage statistics for a given collection.
//
// Based on
// http://docs.mongodb.org/manual/reference/method/db.collection.stats/
func GetCollectionStats(db *mgo.Database, collectionName string) (CollectionStats, error) {
	var output CollectionStats
	err := db.Run(bson.D{
		{"collStats", collectionName},
		{"scale", 1},
		{"verbose", true},
	}, &output)

	if err != nil {
		return output, err
	}
	return output, nil
}
開發者ID:gabstv,項目名稱:go-mgoplus,代碼行數:17,代碼來源:mgoplus.go

示例6: createTokuCollection

// creates a collection in TokuMX
func createTokuCollection(collname string, db *mgo.Database, options tokuMXCreateOptions) {
	fmt.Println("creating collection ", collname)
	var result bson.M
	createCmd := createCollOptions{
		Coll:         collname,
		Compression:  options.CompressionType,
		NodeSize:     options.NodeSize,
		BasementSize: options.BasementSize,
		Partitioned:  options.Partitioned}
	err := db.Run(createCmd, &result)
	if err != nil {
		log.Fatal(err)
	}
}
開發者ID:Tokutek,項目名稱:go-benchmark,代碼行數:15,代碼來源:create_collection.go

示例7: GetCollectionNames

// Returns a slice containing the names of all collections in the current database.
//
// Based on
// http://docs.mongodb.org/manual/reference/method/db.getCollectionNames/
func GetCollectionNames(db *mgo.Database) ([]string, error) {
	raw := make(map[string]interface{})
	err := db.Run(bson.D{{"listCollections", 1}}, &raw)
	if err != nil {
		return nil, err
	}
	jq := jsonq.NewQuery(raw)
	items, err := jq.ArrayOfObjects("cursor", "firstBatch")
	if err != nil {
		return nil, err
	}
	output := make([]string, len(items))
	for k, v := range items {
		output[k], _ = v["name"].(string)
	}
	return output, nil
}
開發者ID:gabstv,項目名稱:go-mgoplus,代碼行數:21,代碼來源:mgoplus.go


注:本文中的labix/org/v2/mgo.Database.Run方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。