- 关系型数据库和非关系型的数据库比较:
- redis的特点
- redis 的安装
- redis 五种数据类型操作
- 字符串 string
- 常见的key操作
- 哈希 (hash)
- 列表
- 集合
- 有序集合
- python中使用数据库
- 速度快
- 原子性, 支持事务
- 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除
添加 获得 set k v get k v 默认是字符串 添加多条数据 mset k1 v1 k2 v2 获得多条 mget k1 k2 追加 append k v 设置有效时间 setex k 时长(s) v
实例:
查看所有的键 keys * 8. 查看某个键是否存在 EXISTS k 9. 查看某个键的有效时长(s), 无限为 -1, 不存在为 -2 ttl k 10. 查看数据类型 type k 11. 删除一个键 del k 12. 设置某存在的键的有效时长(s) EXPIRE k 时长(s) 13. 删除所有键 FLUSHALL
127.0.0.1:6379> mset name laowang age 10 OK 127.0.0.1:6379> keys * 1) "age" 2) "s" 3) "z" 4) "name" 5) "people" 127.0.0.1:6379> EXISTS name (integer) 1 127.0.0.1:6379> ttl name (integer) -1 127.0.0.1:6379> ttl hwrfw (integer) -2 127.0.0.1:6379> setex name 10 laowang OK 127.0.0.1:6379> ttl naem (integer) -2 127.0.0.1:6379> setex name 10 laowang OK 127.0.0.1:6379> ttl naem (integer) -2 127.0.0.1:6379> setex name 10 laowang OK 127.0.0.1:6379> ttl name (integer) 2 127.0.0.1:6379> type age string 127.0.0.1:6379> FLUSHALL OK 127.0.0.1:6379> get name (nil)哈希 (hash)
hset 键名 k v hmset 键名 k1 v1 k2 v2 ... kn vn 15. 获取哈希 hget 键名 k hmget 键名 k1 k2 ... kn 16. 查看指定键所有属性 / 值 hkeys 键名 hvals 键名 17. 删除指定键对应的某个 / 多个属性 hdel 键名 k hdel 键名 k1 k2 ... kn
127.0.0.1:6379> hmset a name laowang age 19 OK 127.0.0.1:6379> hmget a name age 1) "laowang" 2) "19" 127.0.0.1:6379> hkeys a 1) "name" 2) "age" 127.0.0.1:6379> hvals a 1) "laowang" 2) "19" 127.0.0.1:6379> hdel a name (integer) 1列表
18. 创建 / 获取列表 起始下标为0, 负数代表从后往前, -1代表最后一个元素
lpush 键名 v1 v2 ... vn
rpush 键名 v1 v2 ... vn
lrange 键名 start stop
19. 删除列表中的元素, count > 0 表示从前往后删除, count < 0 表示从后往前删除, count = 0 表示全部删除
count 的绝对值表示删除几个值
lrem 键名 count v
20. 修改列表中的元素
lset 键名 index v
21. 插入列表中的元素
linsert 键名 after / before v
127.0.0.1:6379> lpush b 1 2 3 (integer) 3 127.0.0.1:6379> rpush b 4 5 6 (integer) 6 127.0.0.1:6379> lrange b 0 -1 1) "3" 2) "2" 3) "1" 4) "4" 5) "5" 6) "6" 127.0.0.1:6379> lrem b 1 3 (integer) 1 127.0.0.1:6379> lrange b 0 -1 1) "2" 2) "1" 3) "4" 4) "5" 5) "6" 127.0.0.1:6379> rpush b 4 5 6 2 1 (integer) 10 127.0.0.1:6379> lrem b 0 4 (integer) 2 127.0.0.1:6379> lrange b 0 -1 1) "2" 2) "1" 3) "5" 4) "6" 5) "5" 6) "6" 7) "2" 8) "1"集合
sadd 键名 v1 v2 ... vn 23. 查看一个特定集合的所有元素 smembers 键名 24. 移除一个特定集合中的特定元素 srem 键名 v 25. 向一个特定集合中追加元素 sadd 键名 v1 v2 ... vn有序集合
zadd 键名 权重1 v1 权重2 v2 ... 权重n vn 27. 查看一个有序列表里某元素的权重 zscore 键名 v 28. 查看一个有序列表里index范围内的值 zrange 键名 start stop 29. 查看一个有序列表里指定范围权重内的值 zrangebyscore 键名 权重开始 权重结束 30. 删除指定键 zrem 键名 v 31. 删除指定权重范围内的值 zremrangebyscore 键名 权重开始 权重结束python中使用数据库
导包
from redis import StrictRedis
实例化
sr=StrictRedis()
语法
sr.set("name","laowang")



