- 使用键值对
使用键值对
将key-value键值对保存在一个bucket, 你可以使用 tx.Put 这个方法:
- 添加数据
if err := db.Update(func(tx *nutsdb.Tx) error {key := []byte("name1")val := []byte("val1")bucket: = "bucket1"if err := tx.Put(bucket, key, val, 0); err != nil {return err}return nil}); err != nil {log.Fatal(err)}
- 更新数据
上面的代码执行之后key为”name1”和value值”val1”被保存在命名为bucket1的bucket里面。
如果你要做更新操作,你可以仍然用tx.Put方法去执行,比如下面的例子把value的值改成”val1-modify”:
if err := db.Update(func(tx *nutsdb.Tx) error {key := []byte("name1")val := []byte("val1-modify") // 更新值bucket: = "bucket1"if err := tx.Put(bucket, key, val, 0); err != nil {return err}return nil}); err != nil {log.Fatal(err)}
- 获取数据
获取值可以用tx.Get 这个方法:
if err := db.View(func(tx *nutsdb.Tx) error {key := []byte("name1")bucket: = "bucket1"if e, err := tx.Get(bucket, key); err != nil {return err} else {fmt.Println(string(e.Value)) // "val1-modify"}return nil}); err != nil {log.Println(err)}
- 删除数据
删除使用tx.Delete() 方法:
if err := db.Update(func(tx *nutsdb.Tx) error {key := []byte("name1")bucket: = "bucket1"if err := tx.Delete(bucket, key); err != nil {return err}return nil}); err != nil {log.Fatal(err)}
