深入浅出Redis02 使用Redis数据库(String类型)
一 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类型)的更多相关文章
- 使用Redis数据库(String类型)
一 String类型 首先使用启动服务器进程 : redis-server.exe 1. Set 设置Key对应的值为String 类型的value. 例子:向 Redis数据库中插入一条数据类型为S ...
- 深入浅出Redis03 使用Redis数据库(hashes类型)
一 hashes类型及操作 Redis hash是一个string类型的field和value的映射表.它的添加,删除操作都是0(1)(平均).hash特别适合用于存储对象,相较于对将对象的每个字段存 ...
- 深入浅出Redis04使用Redis数据库(lists类型)
一 lists类型及操作 List是一个链表结构,主要功能是push,pop,获取一个范围的所有值等等,操作中key理解为链表的名字. Redis的list类型其实就是一个每个子元素都是sring类 ...
- Redis 中 String 类型的内存开销比较大
使用 String 类型内存开销大 1.简单动态字符串 2.RedisObject 3.全局哈希表 使用 Hash 来存储 总结 参考 使用 String 类型内存开销大 如果我们有大量的数据需要来保 ...
- [redis] redis 对string类型数据操作
package com.xwolf.java.redis; import org.junit.Before; import org.junit.Test; import redis.clients.j ...
- redis的String类型以及其操作
Redis的数据类型 String类型以及操作 String是最简单的数据类型,一个key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或 ...
- Redis中String类型的Value最大可以容纳数据长度
项目中使用redis存储,key-value方式,在Redis中字符串类型的Value最多可以容纳的数据长度是512M 官方信息: A String value can be at max 512 M ...
- 一:redis 的string类型 - 相关操作
*redisclient使用: =============一类:string的方法================ 介绍:string是redis的最简单类型,一个key相应一个value,strin ...
- redis的string类型
string : string类型是二进制安全的, 可以包含任何数据,比如jpg图片或者序列化的对象 . 方法 : set : 设置key对应的值为string类型的value set name ...
随机推荐
- Node 进阶:express 默认日志组件 morgan 从入门使用到源码剖析
本文摘录自个人总结<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 章节概览 morgan是express默认的日志中间件, ...
- 前端Mvvm QC 设计解析
QC 官网http://time-go.github.io/qc/ QC的具体用法.介绍和源码,大家可以去官网下载 从本节开始,我会和大家一起分享在这个框架设计中用到的技巧,希望这些技巧能个大家带来灵 ...
- 【BZOJ1003】【ZJOI2006】物流运输
1003: [ZJOI2006]物流运输trans Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2556 Solved: 1008[Submit] ...
- 东大OJ-快速排序
1236: Simple Sort 时间限制: 1 Sec 内存限制: 128 MB 提交: 195 解决: 53 [提交][状态][讨论版] 题目描述 You are given n ...
- Linux运维初级、中级、高级
学习Linux,好的教程.使学习事半功倍! 老男孩Linux.shell.RHCE运维初中高级 下载地址: http://pan.baidu.com/s/1sB3VC 马哥教育Linux初级.中级.高 ...
- webpack入坑之旅(六)配合vue-router实现SPA
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- android开发------响应用户事件
今天的内容有点简单,不难,就是为按钮添加onClick事件. 新知识点: Intent类的简单使用 startActivity方法 一般事件都由按钮触发,现在我们要实现的是当用户点击按钮的时候,启动 ...
- 网页之间信息传递方式(Cookie,Session)
1.使用header()函数的重定向方式实现网页跳转. EXE:header("Location: http://www.example.com/"); 2.URL的GET ...
- 大规模数据 从SQL SERVER导入到ORACLE方法
来源于:http://blog.csdn.net/iitkd/article/details/40394789 来源:一个7G的SQL SERVER .bak文件要导入到Oracle中,经过实验,完成 ...
- SVN_限制注释长度
一.说明 svn服务器上每个项目都会有单独一个文件夹,文件夹下有一个hooks文件夹,可以在pre-commit添加内容限制注释输入 项目t1的下的hooks文件夹 二.操作步骤 注意:修改的 ...