Usage of bolt database in golang

package main

import (
	"bolt"
	"fmt"
	"errors"
)

func main()  {
	db,err:=bolt.Open("test.db",0600,nil)
	if err!=nil {
		fmt.Print(err)
		return
	}

	db.Update(func(tx *bolt.Tx) error {
		bucket:=tx.Bucket([]byte("mybucket"))
		if bucket==nil {
			bucket,err=tx.CreateBucket([]byte("mybucket"))
			if err!=nil {
				return err
			}
		}

		bucket.Put([]byte("aa"),[]byte("mm"))
		bucket.Put([]byte("bb"),[]byte("nn"))
		return nil
	})

	db.View(func(tx *bolt.Tx) error {
		bucket:=tx.Bucket([]byte("mybucket"))
		if bucket==nil {
			return errors.New("BUCKET NOT FOUND")
		}

		aa:=bucket.Get([]byte("aa"))
		fmt.Print("aa:",string(aa)," ")
		bb:=bucket.Get([]byte("bb"))
		fmt.Print("bb:",string(bb))
		return nil
	})
}

猜你喜欢

转载自blog.csdn.net/baidu_25845567/article/details/84317123
今日推荐