时间:2021-07-04 09:25:03 | 栏目:Golang | 点击:次
Golang连接Redis
数据库
golang
连接数据库,这里博主推荐使用go-redis
这个库,理由很简单(连接数据库的操作类似在数据库里面输入命令) go-redis
的安装方式
go get -v https://github.com/go-redis/redis
-v
小v,是输出过程。一般情况下不带-v
什么反馈都看不到。
连接redis
的方式
package ... import ( "github.com/go-redis/redis" ) func main() { client := redis.NewClient(&redis.Options{ Addr: "127.0.0.1:6379", Password: "", DB: 0, }) defer client.Close() }
顺带提一下,redis
可以设置库的数量为255
个,但实际上我们连接使用时,只有0-19
这二十个库。默认配置下,redis
可以使用0-16
库
分享一些使用过程中,很快捷的技巧 如果在使用redis
时,需要查询一下key
是否存在
value, _ := client.Exists(key).Result()
会返回1或0,1代表key存在,0代表不存在。
新建key-value
键值对时,可以使用Set
方式
这里,需要我们将value
进行字符串转化
import ( "encoding/json" ) var value map[string]string{"username": "", "userpassword": ""} mjson, _ := json.Marshal(value) mString := string(mjson) client.Set(UserName, mString, 0).Err()
获取键值对,可以使用Get
方式
UserInfo, _ := client.Get(UserName).Result()
UserName
是你要查询的值,如果觉得你查询的值不知道在不在,那最好先Exists
一下
返回Key
所对应的Value
,也就是存储的value
。
根据单一条件进行查找,可以使用Keys
方式
keys, _ := client.Keys(search).Result()
注意一下,redis
不支持多条件查找。也就是说正常的SQL
语句是不行的,毕竟非关系型数据库嘛~
如果想要多条件的话,可以*key1*key2*
这样写,但有局限性。
如果匹配到,就返回带有key
的数组。如果没有匹配到,就返回空的数组。
更多使用方式,可以去从go-redis
的文档上看。