redis命令学习的注意问题
1.set get命令只用于字符串,get命令取key值时string正常返回,没有key返回nil,其他类型会报错
设置的时候是set test redis ex 200000等同于SETEX test 200000 redis 下面的有一个test和test2设置完成之后的效果相同
set重新设置一个可以的有效期限会将原有的有效期限覆盖
ex设置有效期限单位为秒 px为毫秒
nx是看此key是否存在,存在设置失败,返回nil,不会覆盖原来的值,成功返回ok。
xx是与nx相反,key不存在设置失败,返回nil,存在的话就会堵盖原来的值
127.0.0.1:6379> set test redis ex 200000 #设置一个string的key并给它设置一个有效期限时间为200000秒
OK
127.0.0.1:6379> get test #获取当前key的值
"redis"
127.0.0.1:6379> LPUSH test redis mongodb mysql #设置一个list key为test,但是test已经存在所以会报错
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> LPUSH test1 redis mongodb mysql #换个名称,成功返回
(integer) 3
127.0.0.1:6379> get test1 #想要获取list类型的key值,但是get只适合string型所以失败报错
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> TTL test #查看key值得剩余期限
(integer) 199300
127.0.0.1:6379> SETEX test2 200000 redis1 #设置一个key并设置期限,这个和第一行执行的效果相同
OK
127.0.0.1:6379> set test2 redis1 px 100 #设置一个key,期限单位为毫秒
OK
127.0.0.1:6379> get test2 #在期限之后为过期的key会删除
(nil)
127.0.0.1:6379> set test2 redis nx #设置一个key,因为之前不存在这个key,所以加上nx会成功
OK
127.0.0.1:6379> set test2 redis nx #设置相同的key,因为之前存在这个key,所以失败,返回nil
(nil)
127.0.0.1:6379> get test2 #获取这个key的值,并没有被覆盖
"redis"
127.0.0.1:6379> set test3 lixue xx #设置这个key,因为这个key不存在,所以设置失败,返回nil
(nil)
127.0.0.1:6379> set test3 lixue #设置一个key用于下面的测试
OK
127.0.0.1:6379> set test3 lixue1 xx #设置这个key,因为这个key存在,所以设置成功,返回ok
OK
127.0.0.1:6379> get test3 #获取这个key,然后值被覆盖
"lixue1"
2.ttl key查询相应key剩下的有效生命期(上面有设置ex)
127.0.0.1:6379> TTL test
(integer) 199300 127.0.0.1:6379> ttl test2
(integer) 199986
3.
redis命令学习的注意问题的更多相关文章
- redis命令学习(二) · THIS SPACE
列表(Lists)操作命令 Redis列表是简单的字符串列表,按照插入顺序排序. 你可以添加一个元素导列表的头部(左边)或者尾部(右边)LPUSH命令插入一个新的元素导头部,而RPUSH插入一个新元素 ...
- Redis 命令学习
每天不学习点新的东西,感觉就有点会被社会淘汰掉了.也许现在学习的知识会很快忘记,下次学习用到这个知识点的时候,再回来翻记录的笔记,我想这样会比从头再学,效率会高点吧. 闲话不多聊,回归正题.今天学习r ...
- Redis命令学习-string类型操作
APPEND key value 假设key已经存在,而且为字符串.那么这个命令会把value追加到原来值的末尾.假设key不存在.首先创建一个空字符串,再运行追加操作. 返回值:返回 ...
- Redis命令学习-Transaction(事务)
DISCARD DISCARD :取消事务,放弃运行事务块内的全部代码.假设在使用WATCH命令监视某个key.则取消监视,等同于UNWATCH. 返回值:总是返回ok. ...
- 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总
本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...
- 【Redis】命令学习笔记——列表(list)+集合(set)+有序集合(sorted set)(17+15+20个超全字典版)
本篇基于redis 4.0.11版本,学习列表(list)和集合(set)和有序集合(sorted set)相关命令. 列表按照插入顺序排序,可重复,可以添加一个元素到列表的头部(左边)或者尾部(右边 ...
- 【Redis】命令学习笔记——哈希(hash)(15个超全字典版)
本篇基于redis 4.0.11版本,学习哈希(hash)相关命令. hash 是一个string类型的field和value的映射表,特别适合用于存储对象. 序号 命令 描述 实例 返回 HSET ...
- 【Redis】命令学习笔记——字符串(String)(23个超全字典版)
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 本篇基于redis 4.0.11版本,学习字符串( ...
- 【Redis】命令学习笔记——键(key)(20个超全字典版)
安装完redis和redis-desktop-manager后,开始学习命令啦!本篇基于redis 4.0.11版本,从对键(key)开始挖坑! 准备工作,使用db1(默认db0,由于之前练习用db0 ...
随机推荐
- 关于ajax技术
传统注册存在的弊端 : 当我们点击注册时,会存在以下几个问题. 首先,浏览器会销毁当前页面,如果注册失败返回的新页面所有之前 填写的数据丢失. 其次,如果网络通信较差,我们表单提交请求数据到服务端,而 ...
- android logo:内核、android开机动画【转】
本文转载自: 关键词:Android 开机logo 开机动画 initlogo.rle bootanimation desc.txt 平台信息:内核:linux2.6/linux3.0系统:a ...
- hdoj Radar Installation
Problem Description Assume the coasting is an infinite straight line. Land is in one side of coastin ...
- hdu1150——最小点覆盖
As we all know, machine scheduling is a very classical problem in computer science and has been stud ...
- B2321 [BeiJing2011集训]星器 数学&&物理
这个题貌似特别奇怪,根本什么算法都想不出来,然而...看完题解之后,竟然用了能量守恒?惊了! 这里有一个题解: https://blog.csdn.net/Mima_Reincarnation/art ...
- go之数据类型转换和类型断言
一.类型转换 1.1 简单类型转换 格式 valueOfTypeB = typeB(valueOfTypeA) int 转 float64 package main import "fmt& ...
- C#格式化年月日截取
//if (bm.Name == "DateYear") //年 //{ // bm.Select(); ...
- 树莓派-USB存储设备自动挂载
简单介绍实现命令行下USB存储设备自动挂载的方法,Linux gnome/kde窗口环境下有移动存储的管理程序,可以实现自动挂载移动存储设备,但是在命令行下 通常需要用mount命令手动挂载USB存储 ...
- P2241 统计方形(数据加强版)
题目背景 1997年普及组第一题 题目描述 有一个n*m方格的棋盘,求其方格包含多少正方形.长方形 输入输出格式 输入格式: n,m因为原来数据太弱,现规定m小于等于5000,n小于等于5000(原来 ...
- 努比亚 N1 (Nubia NX541J) 解锁BootLoader 并刷入recovery
本篇教程教你如何傻瓜式解锁BootLoader并刷入recovery 仅限于努比亚 N1 (Nubia NX541J)使用. 首先需要在设置-关于手机 找到版本号 然后手机快速连续点击来启用开发者模式 ...