一 String类型

首先使用启动服务器进程 :

redis-server.exe

1. Set

  设置Key对应的值为String 类型的value。

  例子:向 Redis数据库中插入一条数据类型为String 的记录。
  在客户端输入命令:

C:\software\redis\64bit>redis-cli.exe -h 127.0.0.1 -p
redis 127.0.0.1:> set foo test
OK
redis 127.0.0.1:> get foo
"test"

2.setnx

 设置key对应的值为string类型的value,如果key已经存在,返回0,nx是not exist的意思。命令简单的理解为: 设置一个key,如果可以key对应的值不存在才更新值。

redis 127.0.0.1:6379> setnx foo1 aaa
(integer) 1
redis 127.0.0.1:6379> get foo1
"aaa"
redis 127.0.0.1:6379> setnx foo1 bbb
(integer) 0

3. setex

  设置key对应的值为string类型的value,并制定此键值对应的有效期。

例如:添加一个haircolor=red的键值对,并指定有效期为10秒。

redis 127.0.0.1:6379> setex haircolor 10 red
OK
redis 127.0.0.1:6379> get haircolor
"red"
redis 127.0.0.1:6379> get haircolor
(nil)

4 setrange

设置指定key的value的子字符串

例如: 我们希望将 xpxiaowu的126邮箱替换为gmail邮箱。

redis 127.0.0.1:6379> set name abcde@126.com
OK
redis 127.0.0.1:6379> setrange name 6 gmail.com
(integer) 15
redis 127.0.0.1:6379> get name
"abcde@gmail.com"

5.mset

  一次设置多个key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置。

redis 127.0.0.1:> mset key1 wangwu key2 lisi
OK
redis 127.0.0.1:> get key1
"wangwu"
redis 127.0.0.1:> get key2
"lisi"

6.msetnx

一次设置多个key的值,成功返回ok,表示所有的值都设置了,失败返回0,表示没有没任何值被设置,但是不会覆盖已经存在的key.

如果有一个key没有设置成功,其他key都不会设置成功。

redis 127.0.0.1:> msetnx key1 aaa key2 bbb key3 ccc
(integer)
redis 127.0.0.1:> get key1
"wangwu"
redis 127.0.0.1:> get key2
"lisi"
redis 127.0.0.1:> get key3
(nil) redis 127.0.0.1:6379> msetnx key3 aaa key4 bbb key5 ccc
(integer) 1
redis 127.0.0.1:6379> get key1
"wangwu"
redis 127.0.0.1:6379> get dkey2
(nil)
redis 127.0.0.1:6379> get key3
"aaa"
redis 127.0.0.1:6379> get key4
"bbb"
redis 127.0.0.1:6379> get key5
"ccc"

7. get 获得可以对应得string 值,如果key不存在返回nil .

getset 设置key的值,并返回key 的旧值。

getrange

获取key对应的value值的子字符串。

getrange name  

mget

一次获取多个key的值,如果对应key不存在则对应返回nil.

redis 127.0.0.1:> mget key1 key2 key3 key4 key5
) "wangwu"
) "lisi"
) "aaa"
) "bbb"
) "ccc"

8. incr

对key的值做加加操作,并返回新的值。

incrby

同incr 类似,加指定值,key 不存在时候回设置key,并认为原来的value是0.

redis 127.0.0.1:6379> set key6 0
OK
redis 127.0.0.1:6379> get key6
"0"
redis 127.0.0.1:6379> incr key6
(integer) 1 redis 127.0.0.1:6379> set key7 1
OK
redis 127.0.0.1:6379> get key7
"1"
redis 127.0.0.1:6379> incrby key7 5
(integer) 6
redis 127.0.0.1:6379> get key7
"6"

  decr

 对key的值做减减操作。

decrby

同decr类似,减指定值。

9. append

给指定key的字符串追加value,返回新字符串值的长度。

redis 127.0.0.1:> get key6
""
redis 127.0.0.1:> append key6 @.com
(integer)
redis 127.0.0.1:> get key6
"1@163.com"

深入浅出Redis02 使用Redis数据库(String类型)的更多相关文章

  1. 使用Redis数据库(String类型)

    一 String类型 首先使用启动服务器进程 : redis-server.exe 1. Set 设置Key对应的值为String 类型的value. 例子:向 Redis数据库中插入一条数据类型为S ...

  2. 深入浅出Redis03 使用Redis数据库(hashes类型)

    一 hashes类型及操作 Redis hash是一个string类型的field和value的映射表.它的添加,删除操作都是0(1)(平均).hash特别适合用于存储对象,相较于对将对象的每个字段存 ...

  3. 深入浅出Redis04使用Redis数据库(lists类型)

    一  lists类型及操作 List是一个链表结构,主要功能是push,pop,获取一个范围的所有值等等,操作中key理解为链表的名字. Redis的list类型其实就是一个每个子元素都是sring类 ...

  4. Redis 中 String 类型的内存开销比较大

    使用 String 类型内存开销大 1.简单动态字符串 2.RedisObject 3.全局哈希表 使用 Hash 来存储 总结 参考 使用 String 类型内存开销大 如果我们有大量的数据需要来保 ...

  5. [redis] redis 对string类型数据操作

    package com.xwolf.java.redis; import org.junit.Before; import org.junit.Test; import redis.clients.j ...

  6. redis的String类型以及其操作

    Redis的数据类型 String类型以及操作 String是最简单的数据类型,一个key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或 ...

  7. Redis中String类型的Value最大可以容纳数据长度

    项目中使用redis存储,key-value方式,在Redis中字符串类型的Value最多可以容纳的数据长度是512M 官方信息: A String value can be at max 512 M ...

  8. 一:redis 的string类型 - 相关操作

    *redisclient使用: =============一类:string的方法================ 介绍:string是redis的最简单类型,一个key相应一个value,strin ...

  9. redis的string类型

    string : string类型是二进制安全的, 可以包含任何数据,比如jpg图片或者序列化的对象 . 方法 : set : 设置key对应的值为string类型的value set  name   ...

随机推荐

  1. 【翻译】Windows 10 中为不同设备加载不同页面的3种方法

    在以前,为PC和手机做App是两个工程,PC和手机各一个.在Windows 10中会发现只有一个了,对于简单的页面变化可以使用VisualState来解决,但是比如网易云音乐这种PC版和手机版差异巨大 ...

  2. android之广播(二)

    广播接受者不仅可以通过清单文件来向系统注册,也可以通过代码来注册.并且有的广播必须通过代码来注册广播接受者. 锁屏和解锁广播 电量改变广播 打开屏幕和关闭屏幕 这里将广播接收者写在服务里面 <? ...

  3. 【转】java.util.ResourceBundle使用详解

    原文链接:http://lavasoft.blog.51cto.com/62575/184605/ 人家写的太好了,条理清晰,表达准确.   一.认识国际化资源文件   这个类提供软件国际化的捷径.通 ...

  4. Beta版本冲刺Day2

    会议讨论 628:       和建平同学一起合作解决了如何获取勾选事件,将勾选的课程信息存入select表格中.但是当运行更新后的项目遇到了无法连接数据库的问题了,目前还在解决中. 因为碰到了这样的 ...

  5. [转]看懂ExtJS的API

    原文地址:http://www.cnblogs.com/youring2/archive/2013/03/05/2944004.html ExtJS的功能很强大,相应的其API也很庞大,并且看起来并不 ...

  6. iPad开发--QQ空间,处理横竖屏布局,实现子控件中的代理

    一.主界面横竖屏效果图 二.主界面加载, 初始化Dock(红色框的控件),判断程序启动时的屏幕方向.调用自己- (void)transitionToLandScape:(BOOL)isLandScap ...

  7. 【BZOJ 4456】【UOJ #184】【ZJOI 2016】旅行者

    http://www.lydsy.com/JudgeOnline/problem.php?id=4456 http://uoj.ac/problem/184 参考(抄)的晨爷的题解(代码) 对矩形进行 ...

  8. 【POJ 1556】The Doors 判断线段相交+SPFA

    黑书上的一道例题:如果走最短路则会碰到点,除非中间没有障碍. 这样把能一步走到的点两两连边,然后跑SPFA即可. #include<cmath> #include<cstdio> ...

  9. hdu4990 矩阵

    C - Reading comprehension Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & ...

  10. 51nod 1163贪心

    用优先队列来贪心,是一个很好地想法.优先队列在很多时候可以维护最值,同时可以考虑到一些其他情况. http://www.51nod.com/onlineJudge/questionCode.html# ...