Golang-levelDB的使用

栏目: 数据库 · 发布时间: 6年前

内容简介:package mainimport ("fmt"

package main

import (

"fmt"

"github.com/syndtr/goleveldb/leveldb"

)

func main() {

levelDB()

}

func levelDB() {

//定义字符数组key value

key := []byte("Test")

value := []byte("Test Level DB")

//定义字符串的键值对

k1 :="key"

v1 :="value"

// The returned DB instance is safe for concurrent use.

// The DB must be closed after use, by calling Close method.

//文件夹位置,获取db实例-设置数据库文件的位置

db, err := leveldb.OpenFile("path/to/db", nil)

//leveldb.

//延迟关闭db流,必须的操作

defer db.Close()

if err != nil {

fmt.Println(err)

}

//向db中插入键值对

e := db.Put(key, value, nil)

//将字符串转换为byte数组

e = db.Put([]byte(k1), []byte(v1), nil)

fmt.Println(e)//

/**

|| 注意:查看路径下的db文件,可知道文件都是自动切分为一些小文件.

*/

//根据key值查询value

data, _ := db.Get(key, nil)

fmt.Println(data)//[84 101 115 116 32 76 101 118 101 108 32 68 66]

fmt.Printf("%c\n",data)//[T e s t  L e v e l  D B]

data, _ = db.Get([]byte(k1), nil)

fmt.Println(data)//[118 97 108 117 101]

fmt.Printf("%c\n",data)//[v a l u e]

// It is safe to modify the contents of the arguments after Delete returns but

// not before.

//根据key进行删除操作

i := db.Delete(key, nil)

fmt.Println(i)//

data, _ = db.Get(key, nil)

fmt.Println(data)//[]

//

//获取db快照

snapshot, i := db.GetSnapshot()

fmt.Println(snapshot)//leveldb.Snapshot{22}

fmt.Println(i)//

//注意: The snapshot must be released after use, by calling Release method.

//也就是说snapshot在使用之后,必须使用它的Release方法释放!

snapshot.Release()

}

Golang-levelDB的使用

levelDB使用


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

面向对象葵花宝典:思想、技巧与实践

面向对象葵花宝典:思想、技巧与实践

李运华 编著 / 电子工业出版社 / 2015-12 / 69

《面向对象葵花宝典:思想、技巧与实践》系统地讲述了面向对象技术的相关内容,包括面向对象的基本概念、面向对象开发的流程、面向对象的各种技巧,以及如何应用面向对象思想进行架构设计。在讲述相关知识或技术的时候,除了从“是什么”这个角度进行介绍外,更加着重于从“为什么”和“如何用”这两个角度进行剖析,力争让读者做到“知其然,并知其所以然”,从而达到在实践中既能正确又能优秀地应用面向对象的相关技术和技巧。 ......一起来看看 《面向对象葵花宝典:思想、技巧与实践》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具