Stirng字符串
SETEX命令
命令:setex key seconds value 设置有效时间为seconds的key-value键值对,单位为秒,返回“OK”,若之前已经存在该key,则会对value进行覆盖,并且加上有效时间,而且重新开始计时。效果等同于set key value ex seconds
setex key seconds value
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> set db redis //先设置永久键值对db-redis
OK
127.0.0.1:6379> ttl db
(integer) -1
127.0.0.1:6379> setex db 20 redis //setex命令将db键加上了有效时间,且可以重写value
OK
127.0.0.1:6379> ttl db
(integer) 19
127.0.0.1:6379> set db mysql //在有效时间内再重新通过set命令将键值对设为永久,且重写value
OK
127.0.0.1:6379> ttl db
(integer) -1
127.0.0.1:6379> get db
"mysql"
set key value ex seconds
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> set db mysql
OK
127.0.0.1:6379> set db redis ex 20
OK
127.0.0.1:6379> ttl db
(integer) 15
127.0.0.1:6379> get db
"redis"
127.0.0.1:6379> set db mysql
OK
127.0.0.1:6379> ttl db
(integer) -1
补充:
setex命令和set命令可以完成永久和有效期限键值对之间的相互转换,且value被重新覆盖,有效时间也会重新开始计时。