Go语言中使用 BoltDB数据库 - Go语言中文社区

Go语言中使用 BoltDB数据库


boltdb 是使用Go语言编写的开源的键值对数据库,Github的地址如下:

https://github.com/boltdb/bolt

boltdb 存储数据时 key 和 value 都要求是字节数据,此处需要使用到 序列化和反序列化。

以下为boltdb的常见使用方式:

1、安装Boltdb数据库

使用如下命令进行安装

go get github.com/boltdb/bolt

2、常见API操作

package main
import (
	"github.com/boltdb/bolt"
	"log"
	"fmt"
)
func main()  {
	// Open the my.db data file in your current directory.
	// It will be created if it doesn't exist.
	// 创建或者打开数据库
	db, err := bolt.Open("my.db", 0600, nil)
	if err != nil {
		log.Fatal(err)
	}
	defer db.Close()


	// 创建表
	err = db.Update(func(tx *bolt.Tx) error {
		// 获取BlockBucket表单
		b := tx.Bucket([]byte("BlockBucket"))

		// 往表里面存储数据
		if b != nil {
			err := b.Put([]byte("ll"),[]byte("Send 1000 BTC To 冠希哥......"))
			if err != nil {
				log.Panic("数据存储失败......")
			}
		}

		// 返回nil,以便数据库处理相应操作
		return nil
	})
	//更新失败
	if err != nil {
		log.Panic(err)
	}

	// 查看数据
	err = db.View(func(tx *bolt.Tx) error {

		// 获取BlockBucket表对象
		b := tx.Bucket([]byte("BlockBucket"))

		// 往表里面存储数据
		if b != nil {
			data := b.Get([]byte("l"))
			fmt.Printf("%sn",data)
			data = b.Get([]byte("ll"))
			fmt.Printf("%sn",data)
		}

		// 返回nil,以便数据库处理相应操作
		return nil
	})
	//更新失败
	if err != nil {
		log.Panic(err)
	}

}

 

转载于:https://my.oschina.net/ruoli/blog/2907400

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_33877092/article/details/91701091
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-06-12 19:50:09
  • 阅读 ( 2310 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢