Redis之事务简单小例子

本文通过三个实例详细解析了Redis事务的使用方法,包括简单的事务操作、事务中出现错误的情况以及遇到语法错误时事务的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开心一笑

别人说我心狠手辣,我舔了一下自己的手,给辣哭了。。。

视频教程

大家好,我录制的视频《Java之优雅编程之道》已经在优快云学院发布了,有兴趣的同学可以购买观看,相信大家一定会收获到很多知识的。谢谢大家的支持……

视频地址:http://edu.youkuaiyun.com/lecturer/994

提出问题

Redis事务如何实现???

解决问题

例一:Redis事务简单用法

127.0.0.1:6379> keys *
1) "MyRedis"
#事务开始
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set MyRedis "change MyRedis one"
#命令会加入队列中
QUEUED
127.0.0.1:6379> set MyRedis "change MyRedis two"
#命令会加入队列中
QUEUED
#事务结束
127.0.0.1:6379> exec
1) OK
2) OK
127.0.0.1:6379> get MyRedis
"change MyRedis two"

例二:如果Redis事务中,EXEC调用之后失败出现的错误

127.0.0.1:6379> set ay_test "one"
OK
#事务开始
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set ay_test "two"
QUEUED
127.0.0.1:6379> set ay_test "three"
QUEUED
#sadd 这里会出现错误
127.0.0.1:6379> sadd ay_test "four"
QUEUED
127.0.0.1:6379> set ay_test "five"
QUEUED
127.0.0.1:6379> exec
1) OK
2) OK
3) (error) WRONGTYPE Operation against a key holding the wrong kind of value
4) OK
127.0.0.1:6379> get ay_test
"five"
127.0.0.1:6379>

例三:语法错误的情况,这时,事务里的所有命令都不会执行

127.0.0.1:6379> set ay_test "one"
OK
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set ay_test "two"
QUEUED
127.0.0.1:6379> set ay_test "three"
QUEUED
127.0.0.1:6379> st ay_test "four"
(error) ERR unknown command 'st'
127.0.0.1:6379> st ay_test "five"
(error) ERR unknown command 'st'
127.0.0.1:6379> set ay_test "six"
QUEUED
127.0.0.1:6379> set ay_test "seven"
QUEUED
127.0.0.1:6379> exec
(error) EXECABORT Transaction discarded because of previous errors.
127.0.0.1:6379> get ay_test
"one"

读书感悟

来自《肖申克救赎》
- 人生可以归结为一种简单的选择:不是忙着活,就是忙着死。
- 有的鸟是不会被关住的,因为它们的羽毛太美丽了!
- 看了这部电影我与信念、自由、友谊交了朋友。

其他

如果有带给你一丝丝小快乐,就让快乐继续传递下去,欢迎转载,点赞,顶,欢迎留下宝贵的意见,多谢支持!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@阿_毅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值