package main
import (
"fmt"
"log"
"github.com/boltdb/bolt"
)
func main() {
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 {
b := tx.Bucket([]byte("mytable"))
if b == nil {
_, err := tx.CreateBucket([]byte("mytable"))
if err != nil {
log.Fatal(err)
}
}
return nil
})
if err != nil {
log.Fatal(err)
}
err = db.Update(func(tx *bolt.Tx) error {
b := tx.Bucket([]byte("mytable"))
if b != nil {
err := b.Put([]byte("1"), []byte("0x0000"))
if err != nil {
log.Fatal(err)
}
err2 := b.Put([]byte("2"), []byte("0x0001"))
if err != nil {
log.Fatal(err2)
}
}
return nil
})
if err != nil {
log.Fatal(err)
}
err = db.Update(func(tx *bolt.Tx) error {
b := tx.Bucket([]byte("mytable"))
if b != nil {
data1 := b.Get([]byte("1"))
fmt.Printf("%s\n", data1)
data2 := b.Get([]byte("2"))
fmt.Printf("%s\n", data2)
}
return nil
})
if err!= nil{
log.Fatal(err)
}
}