go使用go-redis操作redis(二)返回类型

本文详细介绍了在Go中使用go-redis库操作Redis时遇到的各种返回类型,包括BoolCmd、BoolSliceCmd、CommandsInfoCmd、DurationCmd、FloatCmd、GeoLocationCmd、IntCmd、IntSliceCmd、ScanCmd、ScanIterator、StatusCmd、StringCmd、StringIntMapCmd、StringSliceCmd、StringStringMapCmd、StringStructMapCmd、TimeCmd和ZSliceCmd。还特别提到了不建议自定义使用BoolCmd,以及提供了一些使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

返回类型:

  1. BoolCmd

    返回bool 值命令, 提供的一些函数:

    func NewBoolCmd(args ...interface{}) *BoolCmd
    func NewBoolResult(val bool, err error) *BoolCmd
    func (cmd *BoolCmd) Args() []interface{}
    func (cmd *BoolCmd) Err() error
    func (cmd *BoolCmd) Name() string
    func (cmd *BoolCmd) Result() (bool, error)
    func (cmd *BoolCmd) String() string   返回字符串结果
    func (cmd *BoolCmd) Val() bool    计算, 返回bool
    

    该类主要配合其他方法使用,当返回BoolCmd值可以使用对应的类方法

    笔者尝试自定义命令, 但验证结果不是预期的结果,因此不建议自定义使用

    例如:

    	GetBool := func(redisdb *redis.Client, key string) *redis.BoolCmd {
    		cmd := redis.NewBoolCmd("get", key)
    		redisdb.Process(cmd)
    		return cmd
    	}
    	SetBool := func(redisdb *redis.Client, key string, value bool) *redis.BoolCmd {
    		cmd := redis.NewBoolCmd("set", key, value)
    		redisdb.Process(cmd)
    		return cmd
    	}
    	SetBool(client, "dobool", true)
    	v2, err := GetBool(client, "dobool").Result()
    	fmt.Println(v2, err)
    

    输出:

    false <nil>
    
  2. BoolSliceCmd

    返回bool的切片结果,是一组结果,一般用于批量命令

  3. CommandsInfoCmd

    返回命令信息, 提供命令信息的查询

    func NewCommandsInfoCmd(args ...interface{}) *CommandsInfoCmd
    func NewCommandsInfoCmdResult(val map[string]*CommandInfo, err error) *CommandsInfoCmd
    func (cmd *CommandsInfoCmd) Args() []interface{}
    func (cmd *CommandsInfoCmd) Err() error
    func (cmd *CommandsInfoCmd) Name() string
    func (cmd *CommandsInfoCmd) Result() (map[string]*CommandInfo, error)
    func (cmd *CommandsInfoCmd) String() string
    func (cmd *CommandsInfoCmd) Val() map[string]*CommandInfo
    

    例如:

    	res3 := client.Command().String()
    	fmt.Println(res3)
    

    输出:

    command: map[hincrby:0xc04204e800 slaveof:0xc04204ef40 getrange:0xc04204f380 
    zremrangebyscore:0xc04204f600 hmset:0xc04204fe00 lastsave:0xc04204fe40 
    lrem:0xc04204ef00 pfcou
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值