redis数据库【第三期】
本文主讲内容:数据的时效时间及其redis与python进行交互!
数据的失效时间
什么是数据的失效时间
答:为数据设置一个时限,超过这个时限,这个数据就会自动删除,应用场景:验证码!
在 redis 数据库为 key【数据】 设置失效时间的两种方式
第一种形式:创建数据时为指定 key 设置失效时间
语法:
1:set key value ex 30 为这个 key 设置失效时间,失效时间为 30 秒
2:set key value px 300000 为这个 key 设置失效时间,失效时间为 300000 毫秒
第二种形式:为已经创建的 key 添加失效时间
语法:expire 已经存在的key 30 【为这个 key 设置失效时间,失效时间为 30 秒】
如何在 redis 数据库内查询某个 key 的失效时间还剩多长
语法:
1:ttl 指定key 【查询指定key还剩多少时间失效,查询单位显示为秒】
2:pttl 指定key 【查询指定key还剩多少时间失效,查询单位显示为毫秒】
结果:
正数:查询某个键还有多少时间失效,如果显示为正数就说明还有正数这些时间失效
-1:查询某个键还有多少时间失效,如果显示为 -1 就说明这个键永远不失效
-2:查询某个键还有多少时间失效,如果显示为 -2 就说明这个键已经永远不失效
图示:
在 redis 数据库内创建数据时,nx 参数与 xx 参数的作用
语法:
1:set key value nx 【如果这个key在redis数据库内不存在那么创建这个 key 成功】
2:set key value xx 【如果这个key在redis数据库内存在那么创建这个 key 成功】
3:set key value ex 30 nx 【如果这个key在redis数据库内不存在那么创建这个 key 成功,并且在30秒后这个key失效】
4:set key value ex 30 xx 【如果这个key在redis数据库内存在那么创建这个 key 成功,并且在30秒后这个key失效】
图示:
应用场景:前两种语法用于加锁的机制上面,后两种情况用于锁机制避免出现死锁的情况
redis数据库与python交互【重点】
redis 与 python 进行交互的步骤
第一步:安装 python 的 redis 第三方库 → pip3 install redis
第二步:导入 redis 第三方数据库 → import redis
第三步:创建 redis 连接数据库对象 → red_obj = redis.Redis(host=主机,port=端口号,db=数据库号)
注意:redis默认有16个数据库,也就是数据库号可以是 0-15,一般选择0 redis的端口号是6379(整形)
第四步:利用创建的 redis 数据库对象对数据库进行操作 → result = red_obj.sadd(“name:age” , “21”) 向外键名为name的集合内插入键为age值为“21”的一条数据
注意:redis内的集合数据类型具有数据唯一性以及无序性的特征,如果上述插入的数据在集合内存在返回0,不存在返回数据1
截图:
redis 与 python 交互后通过代码对redis数据库的操作
ps:确保对 redis 数据库操作之前已经成功通过代码连接上 redis 数据库
操作截图【对redis数据库内的string数据类型进行操作】:
ps:下面代码中的 sr 是建立数据库连接的对象
持续更新中……