代码之家  ›  专栏  ›  技术社区  ›  Ahmadov

Redis递增数值-ERR value不是整数或超出范围

  •  0
  • Ahmadov  · 技术社区  · 7 年前

    雷迪斯 incr set 然后使用递增 对于同一把钥匙,问题已经不存在了。为什么会这样?有什么解决办法吗?

    127.0.0.1:6379[5]> incr 100
    (error) ERR value is not an integer or out of range
    127.0.0.1:6379[5]> incr '100'
    (error) ERR value is not an integer or out of range
    127.0.0.1:6379[5]> incr "100"
    (error) ERR value is not an integer or out of range
    127.0.0.1:6379[5]> set 100 1
    OK
    127.0.0.1:6379[5]> incr 100
    (integer) 2
    

    127.0.0.1:6379> get "ahmedov"
    (nil)
    127.0.0.1:6379> incr "ahmedov"
    (integer) 1
    127.0.0.1:6379> incr "ahmedov"
    (integer) 2
    127.0.0.1:6379> get 12.1
    (nil)
    127.0.0.1:6379> incr 12.1
    (integer) 1
    127.0.0.1:6379> get -1
    (nil)
    127.0.0.1:6379> incr -1
    (integer) 1
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Itamar Haber    7 年前

    直到你打电话给 SET 命令时,您试图递增名为“100”的密钥,该密钥不包含整数的有效表示形式。

    在将名为“100”的键设置为字符串“1”后,增量成功并按预期返回2(1+1)。

    推荐文章