一 String类型

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

redis-server.exe

1. Set

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

  例子:向 Redis数据库中插入一条数据类型为String 的记录。

  在客户端输入命令:

1
2
3
4
5
C:\software\redis\64bit>redis-cli.exe -h 127.0.0.1 -p 6379
redis 127.0.0.1:6379> set foo test
OK
redis 127.0.0.1:6379> get foo
"test"

2.setnx

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

1
2
3
4
5
6
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秒。

1
2
3
4
5
6
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邮箱。

1
2
3
4
5
6
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表示没有任何值被设置。

1
2
3
4
5
6
redis 127.0.0.1:6379> mset key1 wangwu key2 lisi
OK
redis 127.0.0.1:6379> get key1
"wangwu"
redis 127.0.0.1:6379> get key2
"lisi"

6.msetnx

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
redis 127.0.0.1:6379> msetnx key1 aaa key2 bbb key3 ccc
(integer) 0
redis 127.0.0.1:6379> get key1
"wangwu"
redis 127.0.0.1:6379> get key2
"lisi"
redis 127.0.0.1:6379> 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 0 5
mget

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

redis 127.0.0.1:6379> mget key1 key2 key3 key4 key5

1) "wangwu"
2) "lisi"
3) "aaa"
4) "bbb"
5) "ccc"

8. incr

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

incrby

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
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,返回新字符串值的长度。

1
2
3
4
5
6
redis 127.0.0.1:6379> get key6
"1"
redis 127.0.0.1:6379> append key6 @163.com
(integer) 9
redis 127.0.0.1:6379> get key6
1@163.com

以上所述是小编给大家介绍的Redis02 使用Redis数据库(String类型)全面解析,希望对大家有所帮助,如果大家想了解更多内容,敬请关注脚本之家!

使用Redis数据库(String类型)的更多相关文章

  1. 深入浅出Redis02 使用Redis数据库(String类型)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. redis的string类型

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

随机推荐

  1. 应用端连接MySQL数据库报Communications link failure

    事情的起因: 某项目的开发同学突然Q我们组的某同学,要求我们调整MySQL的连接等待超时参数wait_timeout.要求我们从28800s调整到31536000s(也就是一年) 应用端测试环境的to ...

  2. Python正则表达式指南 (转)

    本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. ...

  3. Spring Cloud Eureka Server使用(注册中心)

    一.Spring Cloud Eureka 基于Netflix Eureka做了二次封装 由两个组件组成 Eureka Server 注册中心, 供服务注册的服务器 Eureka Client 服务注 ...

  4. RedHat7.3安装MySQL5.7

    1.下载Mysql安装包 https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.20-1.el6.x86_64.rpm-bundle.tar 附百度 ...

  5. C#代码覆盖率实践-vsinstr和OpenCover

    C#代码覆盖率实践-vsinstr和OpenCover 标签: C#覆盖率Visual StudioOpenCover测试 2013-06-09 00:57 8149人阅读 评论(8) 收藏 举报   ...

  6. 黑域,黑阈 Permission denied

    在执行: adb -d shell sh /data/data/me.piebridge.brevent/brevent.sh 时遇到Permission denied,多运行一次就好了. 完整的有两 ...

  7. 关于Java按键事件KeyEvent重点几步

    按键事件可以利用键盘来控制和执行一些动作,或者从键盘上获取输入,只要按下,释放一个键或者在一个组件上敲击,就会触发按键事件.KeyEvent对象描述事件的特性(按下,放开,或者敲击一个键)和对应的值. ...

  8. Tomcat默认工具manager管理页面访问配置

    Tomcat的默认工具manager配置,在很多的生产环境中由于基本用不到.或者是不太需要使用Tomcat默认的manager管理页面时一般都会把Tomcat的默认webapp下的内容给删除了,但是如 ...

  9. Facet with Lucene

    Facets with Lucene Posted on August 1, 2014 by Pascal Dimassimo in Latest Articles During the develo ...

  10. PAT 乙级 1051 复数乘法 (15) C++版

    1051. 复数乘法 (15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 复数可以写成(A + Bi)的常规 ...