• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Golang db.OpenDB函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Golang中github.com/HouzuoGuo/tiedot/db.OpenDB函数的典型用法代码示例。如果您正苦于以下问题:Golang OpenDB函数的具体用法?Golang OpenDB怎么用?Golang OpenDB使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了OpenDB函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。

示例1: GetDB

func GetDB() *db.DB {
	myDB, err := db.OpenDB(tiedotmartini2.DATABASE_DIR)
	if err != nil {
		panic(err)
	}
	return myDB
}
开发者ID:jmptrader,项目名称:TiedotMartini2,代码行数:7,代码来源:base.go


示例2: Start

func Start(dir string, port int, tlsCrt, tlsKey, jwtPubKey, jwtPrivateKey string) {
	var err error
	HttpDB, err = db.OpenDB(dir)
	if err != nil {
		panic(err)
	}

	// These endpoints are always available and do not require JWT auth
	http.HandleFunc("/", Welcome)
	http.HandleFunc("/version", Version)
	http.HandleFunc("/memstats", MemStats)

	if jwtPrivateKey != "" {
		// JWT support
		ServeJWTEnabledEndpoints(jwtPubKey, jwtPrivateKey)
	} else {
		// No JWT
		ServeEndpoints()
	}

	if tlsCrt != "" {
		tdlog.Noticef("Will listen on all interfaces (HTTPS), port %d.", port)
		if err := http.ListenAndServeTLS(fmt.Sprintf(":%d", port), tlsCrt, tlsKey, nil); err != nil {
			tdlog.Panicf("Failed to start HTTPS service - %s", err)
		}
	} else {
		tdlog.Noticef("Will listen on all interfaces (HTTP), port %d.", port)
		http.ListenAndServe(fmt.Sprintf(":%d", port), nil)
	}
}
开发者ID:Lanzafame,项目名称:tiedot,代码行数:30,代码来源:srv.go


示例3: initialize

func initialize() {
	// remove temp files
	os.RemoveAll(DBdir)

	// open db
	d, err := db.OpenDB(DBdir)

	if err != nil {
		panic(err)
	}

	// create collection
	if err := d.Create("Entries"); err != nil {
		panic(err)
	}

	// collection instance
	docEntries := d.Use("Entries")

	// dummy data
	entries := Entries{
		&Entry{1, time.Now(), "Entry 1", "First Entry!"},
		&Entry{2, time.Now(), "Golang", "Go language is awesome"},
	}

	// insert each
	for _, entry := range entries {
		docEntries.Insert(structs.New(entry).Map())
	}
}
开发者ID:jancarloviray,项目名称:go-adventures,代码行数:30,代码来源:main.go


示例4: initDB

// Setup the database connection
func initDB() *db.Col {
	// (Create if not exist) open a database
	myDB, err := db.OpenDB("database")
	if err != nil {
		log.Println("Opening existing database")
	} else {
		log.Println("Creating new database")
	}

	// Create two collections: Feeds and Votes
	if err := myDB.Create("Users"); err != nil {
		log.Println("Using existing users database")
	} else {
		log.Println("Using fresh new users database")
	}

	users := myDB.Use("Users")
	if err := users.Index([]string{"Email"}); err != nil {
		log.Println("Using existing email index on users")
	} else {
		log.Println("Creating new index on email field of users database")
	}

	// Add a random user or 2
	//	users.Insert(dbRow{"Email": "[email protected]", "Password": "abc123"})

	return users
}
开发者ID:steveoc64,项目名称:ksm,代码行数:29,代码来源:rego.go


示例5: main

func main() {
	// It is very important to initialize random number generator seed!
	rand.Seed(time.Now().UTC().UnixNano())

	jsondb, err := db.OpenDB(dbname)
	if err != nil {
		panic(err)
	}
	defer jsondb.Close()

	if _, err = os.Stat(filepath.Join(dbname, clname)); os.IsNotExist(err) {
		if err = jsondb.Create(clname); err != nil {
			panic(err)
		}
		/*
			userscl = jsondb.Use(clname)
			if err = userscl.Index([]string{"courseCode"}); err != nil {
				panic(err)
			}
		*/
	}

	if _, err = os.Stat(filepath.Join(dbname, qlname)); os.IsNotExist(err) {
		if err = jsondb.Create(qlname); err != nil {
			panic(err)
		}
		qlCl = jsondb.Use(qlname)
		if err := qlCl.Index([]string{"courseId"}); err != nil {
			panic(err)
		}
	}
	userscl = jsondb.Use(clname)
	qlCl = jsondb.Use(qlname)

	/*
	       needs to create index upon first time
	   	if err := qlCl.Index([]string{"courseId"}); err != nil {
	   		panic(err)
	   	}

	   	if err := userscl.Index([]string{"courseCode"}); err != nil {
	   		panic(err)
	   	}
	*/

	m := martini.Classic()
	m.Get("/users", GetUsers)
	m.Post("/users", CreateUser)
	m.Get("/users/:id", GetUser)
	m.Delete("/users/:id", DeleteUser)
	m.Put("/users/:id", UpdateUser)
	m.Get("/courses", GetCourses)
	m.Get("/courses/:id", SearchCourse)
	m.Post("/courses", CreateCourse)
	m.Post("/questionlists", CreateQuestionList)
	m.Get("/questionLists", SearchQuestionListByCourseId)
	m.Get("/questionLists/:id", SearchQuestionList)
	m.Post("/questionLists/:id", UpdateQuestionList)
	m.Run()
}
开发者ID:rleiwang,项目名称:ars,代码行数:60,代码来源:server.go


示例6: main

func main() {
	// It is very important to initialize random number generator seed!
	rand.Seed(time.Now().UTC().UnixNano())

	jsondb, err := db.OpenDB(dbname)
	if err != nil {
		panic(err)
	}
	defer jsondb.Close()

	if _, err = os.Stat(filepath.Join(dbname, clname)); os.IsNotExist(err) {
		if err = jsondb.Create(clname); err != nil {
			panic(err)
		}
	}
	userscl = jsondb.Use(clname)

	userscl.Insert(map[string]interface{}{"name": "Course1", "status": "activ", "Age": 3})
	userscl.Insert(map[string]interface{}{"name": "Course 2", "status": "active", "Age": 3})
	userscl.Insert(map[string]interface{}{"name": "Course 3", "status": "golang.org", "Age": 3})

	m := martini.Classic()
	m.Get("/users", GetUsers)
	m.Post("/users", CreateUser)
	m.Get("/users/:id", GetUser)
	m.Delete("/users/:id", DeleteUser)
	m.Put("/users/:id", UpdateUser)
	m.Get("/courses", SearchCourse)
	m.Run()
}
开发者ID:rleiwang,项目名称:go-ember,代码行数:30,代码来源:server.go


示例7: mkTmpDBAndCol

// Create a temporary database and collection for benchmark use.
func mkTmpDBAndCol(dbPath string, colName string) (*db.DB, *db.Col) {
	os.RemoveAll(dbPath)
	tmpDB, err := db.OpenDB(dbPath)
	if err != nil {
		panic(err)
	}
	if err = tmpDB.Create(colName); err != nil {
		panic(err)
	}
	return tmpDB, tmpDB.Use(colName)
}
开发者ID:marble58,项目名称:tiedot,代码行数:12,代码来源:benchmark.go


示例8: NewDatabaseConnection

func NewDatabaseConnection(rootPath string) (database *db.DB) {
	dir := rootPath + "/data"
	database, err := db.OpenDB(dir)
	if err != nil {
		panic(err)
	}

	initDatabase(database)

	return
}
开发者ID:Term1nal,项目名称:squircy2,代码行数:11,代码来源:data.go


示例9: mkTmpDBAndCol

// Create a temporary database and collection for benchmark use.
func mkTmpDBAndCol(dbPath string, colName string) (col *db.Col) {
	os.RemoveAll(dbPath)
	tmpDB, err := db.OpenDB(dbPath)
	if err != nil {
		panic(err)
	}
	tmpCol, err := db.OpenCol(tmpDB, colName)
	if err != nil {
		panic(err)
	}
	return tmpCol
}
开发者ID:huanshi,项目名称:tiedot,代码行数:13,代码来源:benchmark.go


示例10: OpenDatabase

func (tdb *DBTiedot) OpenDatabase() {
	dir := "/tmp/seed-db"

	db, err := tiedot.OpenDB(dir)
	if err != nil {
		panic(err)
	}

	if err := db.Create("Users", 50); err != nil {
		fmt.Println("Collection Users already created.")
	}

	tdb.Db = db
}
开发者ID:jamesunger,项目名称:seed,代码行数:14,代码来源:tiedot.go


示例11: OpenDB

func (tdb *DBTiedot) OpenDB(constr string) (interface{}, error) {
	dir := "/tmp/seed-db"

	db, err := tiedot.OpenDB(dir)
	if err != nil {
		return nil, err
	}

	//if err := db.Create("Users"); err != nil {
	//	fmt.Println("Collection Users already created.")
	//}

	tdb.Db = db
	return db, nil
}
开发者ID:jamesunger,项目名称:seed,代码行数:15,代码来源:tiedot.go


示例12: NewDatabase

func NewDatabase(path string) (*Database, error) {

	d, err := db.OpenDB(path)

	if err != nil {
		return nil, err
	}

	d.Create("Projects")
	d.Create("Resources")

	return &Database{
		db: d,
	}, nil
}
开发者ID:kildevaeld,项目名称:projects,代码行数:15,代码来源:_database.go


示例13: GetDB

func GetDB(path string) *DataStore {
	db, err := db.OpenDB(path)
	if err != nil {
		panic(err)
	}

	db.Create("Users", 2)
	users := db.Use("Users")

	users.Index([]string{"nick", "ip"})

	return &DataStore{
		url:   path,
		db:    db,
		users: users,
	}
}
开发者ID:voldyman,项目名称:GILL,代码行数:17,代码来源:datastore.go


示例14: home

func home(w http.ResponseWriter, req *http.Request) {
	// local vars
	var query interface{}
	entries := Entries{}
	queryResults := make(map[int]struct{})

	// open database
	d, err := db.OpenDB(DBdir)

	if err != nil {
		panic(err)
	}

	// use collection
	docEntries := d.Use("Entries")

	// build query from json and convert to interface{}
	json.Unmarshal([]byte(`"all"`), &query)

	// execute query and pass results to queryResults
	if err := db.EvalQuery(query, docEntries, &queryResults); err != nil {
		panic(err)
	}

	// queryResults contains []int of IDs
	for id := range queryResults {
		entry := Entry{}

		readBack, _ := docEntries.Read(id)

		// map[string]interface{} TO struct hack

		j, _ := json.Marshal(readBack) // struct to json
		json.Unmarshal(j, &entry)      // json to actual type

		entries = append(entries, &entry)
	}

	// compile template with data
	if err := index.Execute(w, entries); err != nil {
		http.Error(w, err.Error(), http.StatusInternalServerError)
	}
}
开发者ID:jancarloviray,项目名称:go-adventures,代码行数:43,代码来源:main.go


示例15: NewTieDb

func NewTieDb(dir string, maxDay int) *TieDb {
	mydb, err := db.OpenDB(dir)
	if err != nil {
		panic(err)
	}
	tdb := &TieDb{
		tdb:           mydb,
		RequestTable:  newTable(mydb, "req"),
		ResponseTable: newTable(mydb, "res"),
	}
	if maxDay > 0 {
		maxTime := time.Now().Unix() - int64(maxDay)*86400
		if tdb.RequestTable.Gc(maxTime) > 100 {
			tdb.RequestTable.Scrub()
		}
		if tdb.ResponseTable.Gc(maxTime) > 100 {
			tdb.ResponseTable.Scrub()
		}
	}
	return tdb
}
开发者ID:koolhazz,项目名称:pproxy,代码行数:21,代码来源:kvdb.go


示例16: setupDb

func setupDb(pathDb string, eraseDataBase bool) {
	myDBDir := pathDb

	if eraseDataBase {
		os.RemoveAll(myDBDir)
		defer os.RemoveAll(myDBDir)
	}

	myDB, err := db.OpenDB(myDBDir)
	if err != nil {
		panic(err)
	}

	if eraseDataBase {
		if err := myDB.Create("todo"); err != nil {
			panic(err)
		}
	}

	todoCol = myDB.Use("todo")
}
开发者ID:DrGo,项目名称:golang-todomvc,代码行数:21,代码来源:todomvc.go


示例17: New

func New(dbDir string) (*ProxyStorage, error) {
	myDb, err := db.OpenDB(dbDir)
	if err != nil {
		return nil, err
	}
	proxyCol := myDb.Use("proxy")
	if proxyCol == nil {
		if err := myDb.Create("proxy"); err != nil {
			return nil, err
		}
		proxyCol = myDb.Use("proxy")
		if err := proxyCol.Index([]string{"Ip"}); err != nil {
			return nil, err
		}
		if err := proxyCol.Index([]string{"Port"}); err != nil {
			return nil, err
		}
	}

	logger.Info("Established db connection")
	return &ProxyStorage{myDb, proxyCol}, nil
}
开发者ID:pomkine,项目名称:weasel,代码行数:22,代码来源:db.go


示例18: main

func main() {
	myDB, err := db.OpenDB("data")

	if err != nil {
		panic(err)
	}

	if err := myDB.Create("Pages"); err != nil {
		fmt.Println(err)
	}

	pageCol = myDB.Use("Pages")

	http.HandleFunc("/commit/", CommitHandler)
	http.HandleFunc("/e/", EditPageHandler)
	http.Handle("/", http.FileServer(http.Dir("./public")))
	http.HandleFunc("/gen", GeneratorHandler)
	http.HandleFunc("/p/", PageHandler)
	http.HandleFunc("/new", NewPageHandler)
	http.ListenAndServe(":3001", nil)

}
开发者ID:extrasalt,项目名称:Festival,代码行数:22,代码来源:main.go


示例19: add

func add(w http.ResponseWriter, req *http.Request) {
	// make sure it's post
	if req.Method != "POST" {
		http.NotFound(w, req)
		return
	}

	entry := Entry{
		Name:    req.FormValue("name"),
		Message: req.FormValue("message"),
	}

	d, err := db.OpenDB(DBdir)
	if err != nil {
		panic(err)
	}

	docEntries := d.Use("Entries")

	docEntries.Insert(structs.New(entry).Map())

	http.Redirect(w, req, "/", http.StatusTemporaryRedirect)
}
开发者ID:jancarloviray,项目名称:go-adventures,代码行数:23,代码来源:main.go


示例20: NewTiedotEngine

// Create a new LevelDBEngine with the given file and options
func NewTiedotEngine(directory string, collections []string, dropPref DropPreference) *TiedotEngine {
	db, err := tiedot.OpenDB(directory)
	log.FatalIfErr(err, "Failure opening tiedot basedir err:")
	for _, c := range collections {
		if _, ok := db.StrCol[c]; ok {
			log.V(4).Info("Collection %s already exists")
			if dropPref == DropIfExist {
				log.Info("Dropping collection %s due to dropIfExist option")
				err = db.Drop(c)
				log.FatalIfErr(err, "Failure dropping collection with name:%s err:", c)
				err = db.Create(c, 1) // partition DB for use by up to 1 goroutines at a time
				log.FatalIfErr(err, "Failure creating collection with name:%s err:", c)
			}
		} else {
			log.V(4).Info("Creating collection %s")
			err = db.Create(c, 1) // partition DB for use by up to 1 goroutines at a time
			log.FatalIfErr(err, "Failure creating collection with name:%s err:", c)
		}
	}
	tde := &TiedotEngine{
		tiedot: db,
	}
	return tde
}
开发者ID:ryansb,项目名称:legowebservices,代码行数:25,代码来源:structs.go



注:本文中的github.com/HouzuoGuo/tiedot/db.OpenDB函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Golang dberr.New函数代码示例发布时间:2022-05-28
下一篇:
Golang db.EvalQuery函数代码示例发布时间:2022-05-28
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap