Golang連接Redis數據庫

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的文檔上看。

https://godoc.org/github.com/go-redis/redis
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章