Redis非关系型数据库,数据存放在计算机内存中,无SQL语句。Redis中有多种数据类型,比较常用的数据类型是string类型和hash类型。平时我们使用RedisDesktopManager来对Redis中的数据进行可视化管理import redisr = redis.Redis(host='127.0.0.1',password='HK139bc&*',db=14,port=6379)print("============redis string类型=============")#1、新增r.set("zhangsan","张三爱打游戏!")r.set("lisi","李四爱打游戏!")r.set("wangwu","王五爱打游戏!")#2、修改r.set("zhangsan","张三的爷爷是红军战士!")r.set("lisi","李四的爷爷是红军战士!")r.set("wangwu","王五的爷爷是红军战士!")#3# 数据不存在时,创建新key,同时设置key的失效时间,时间是秒#数据存在时,修改key,同时设置key的失效时间,时间是秒#r.setex("sunhonglei","孙红雷的爷爷是红军战士",100)r.expire("sunhonglei",300)#4、查询val = r.get("sunhonglei")if val: print(val.decode())#获取key,keys()返回的是一个二进制格式的数据,需要decode()解码才能识别print("匹配【任意字符开头,s结尾】的key:",r.keys('*s'))print("匹配【s开头,任意字符结尾】的key:",r.keys('s*'))print("返回包含【s】的key:",r.keys("*s*"))print("返回所有key:",r.keys("*"))print("返回所有key:",r.keys())#get()返回的是一个二进制格式的数据,需要decode()解码才能识别r.set('天蝎座:fsy','湖南人')print(r.get("天蝎座:fsy").decode())#5、删除# r.delete("zhangsan")# r.delete("lisi",'wangwu')#删除所有的key# for k in r.keys():# r.delete(k)print("========redis hash类型=========")#新增r.hset('stu_info','甜甜姐','真漂亮')r.hset('stu_info','春天','百花齐放')r.hset('stu_info','夏天','太热了,狗儿猫儿热的不停地吐舌头')#修改r.hset('stu_info','甜甜姐','真漂亮,年轻就是美')r.hset('stu_info','春天','百花齐放,色彩斑斓')r.hset('stu_info','夏天','太热了,狗儿猫儿热的不停地吐舌头,娃娃们往地里跑,抱回一个个的大西瓜,啃个不停')#查询print("指定大key和小key获取对应的数据:",r.hget('stu_info','甜甜姐').decode())#获取所有的key和value:my_dic = r.hgetall("stu_info")for k,v in my_dic.items(): print(k.decode(),v.decode())new_stu_info = {}for k,v in my_dic.items(): new_stu_info[k.decode()] = v.decode()print(new_stu_info)#查看key是什么类型的print(r.type('stu_info'))#删除# print("删除指定key:",r.hdel('stu_info','春天'))# print("删除整个key",r.delete('stu_info'))r.expire("stu_info",120)print("===========redis hash练习代码===========")#1、连数据库,查到数据库里面所有的数据,游标类型要用pymysql.curosrs.DictCour#2、查到所有数据 [ {"id":1,"passwd":"49487dd4f94008a6110275e48ad09448","username":"niuhayang","is_admin":1}]#3、循环这个list,取到usernamer,把username当做key#4、再把这个小字典转成json,存进去就ok。import pymysql,json,redisr = redis.Redis(host='127.0.0.1',password='HK139bc&*',db=13,port=6379)conn = pymysql.connect(host='127.0.0.1',user='jxz',passwd='123456',db='jxz',charset='utf8')cur = conn.cursor(cursor=pymysql.cursors.DictCursor)cur.execute('select * from my_user limit 5;')all_data = cur.fetchall()print(all_data)for data in all_data: k = data.get('username') r.hset('stu_info',k,json.dumps(data)) r.expire("stu_info",300)cur.close()conn.close()
转载于:https://www.cnblogs.com/mtszw/p/9021922.html
相关资源:JAVA上百实例源码以及开源项目
转载请注明原文地址: https://mac.8miu.com/read-15799.html