数据库的事务是为了保证几条sql能同时执行成功,如果其中一部分产生错误会回滚操作。保证数据的安全。
但是现在的系统数据层已经不只是依靠数据库来处理数据了,往往会加入缓存系统。对数据的处理产生了干扰,已经不全由数据库来决定了。
例如:
public void addGold(User user1,User user2,int gold){ user1.setGold(user1.getGold+gold); user2.setGold(user2.getGold-gold); dao.updateUser(user1); dao.updateUser(user2); }
采用事物是能保证这个业务不会出错。
但是现在大部分 系统都会用aop的方式在updateUser上加入缓存操作。而不是手动控制update
所以updateUser的时候在修改数据库之前其实已经修改了缓存里面的值。也就是说事物控制不了数值的正确性了。出现问题也没办法回滚。
这确实是一个复杂的问题,因为数据出现在缓存系统和数据库系统两个地方。 数据库系统就算有事物可以回滚,但是不会影响到缓存系统里面的数据。也就是说就算数据库操作正常,在缓存的时候有可能出错导致缓存的数据与数据库数据不一致的问题。
针对这个问题,当然也是有解决办法的。就是对业务数据针对的处理。重要数据不仅仅要确保数据库里面能回滚。缓存系统也要能同步回滚。两者同时操作成功否则同时回滚。
而对于大部分其他一般的业务,数据库事务作用已经名存实亡了。
相关推荐
本学期分组完成“教学事务管理系统”,具体要求如下: 1. 系统必须是在B/S结构下实现。 2. 数据库在原理1的School数据库基础下自行修改,只能添加,不能删除。 3. 系统具有为不同的角色(系统管理员、教师、学生)...
本书是经典的数据库系统教科书《Database SystemConcepts》的最新修订版,全面介绍数据库系统的各种知识,透彻阐释数据库管理的基本概念。本书内容丰富,不仅讨论了关系数据模型和关系语言、数据库设计过程、关系...
详细介绍数据库系统 事务概念,状态,特性等
什么是关系数据库管理系统(RDBMS)? 什么是SQL?列举一些常见的SQL命令。 什么是索引?为什么使用索引可以提高查询性能? 什么是事务?MySQL如何支持事务处理? 什么是主键和外键?它们之间有什么区别? 什么...
学习"数据库系统概论"可以帮助你更好地使用数据库,设计适合你需要的数据库应用系统,并进一步科学地管理好数据库系统。 课程概述 "数据库系统概论"是计算机科学与技术专业、软件工程专业、信息系统与信息管理等...
共分16章,具体内容主要包括:数据库的基本概念、数据模型、关系数据库、关系数据库系统、关系数据库标准语言SQL、数据完整性、数据库安全、事务管理、并发控制、数据库恢复、关系数据理论、数据库设计、面向对象...
内蒙古科技大学 《数据库原理及应用》课程设计说明书 题 目:旅行社数据库系统 学生姓名:XXX 学 号: 专 业:软件工程 班 级:2014级软件1班 指导教师:康懿 内蒙古科技大学课程设计任务书 "课程名称 "数据库原理与...
《数据库系统原理》是一本全面介绍数据库系统理论、技术和方法的大学教科书,全书分为基础篇、设计篇、实现篇、专题篇和新技术篇。基础篇介绍数据库的基本概念...《数据库系统原理》还将提供电子课件和实验指导等教辅材
数据库系统工程师考点分析-数据库系统工程师-06事务和锁.doc
《数据库系统原理》是一本全面介绍数据库系统理论、技术和方法的大学教科书,全书分为基础篇、设计篇、实现篇、专题篇和新技术篇。基础篇介绍数据库的基本概念...《数据库系统原理》还将提供电子课件和实验指导等教辅材
1.2 什么是数据库系统 3 1.3 什么是数据库 6 1.4 为什么用数据库 10 1.5 数据独立性 12 1.6 关系系统及其他 15 1.7 小结 17 练习 17 参考文献和简介 19 部分练习答案 19 第2章 数据库系统体系结构 22 2.1 引言 22 ...
基础篇介绍数据库的基本概念和体系结构、关系数据库系统和数据库的安全性与完整性。设计篇讨论数据库设计的基本步骤和设计方法,并介绍实体-联系模型、扩展的实体-联系模型和关系数据库的函数依赖理论。实现篇介绍...
涵盖了数据模型、关系模型、基于对象的数据库和XML、数据存储和查询、事务管理、数据库系统体系结构等方面的内容。直观易懂。采用直观的方式描述概念,以结构清晰的图示和示例代替形式化的证明。实用性强。以银行...
数据库系统 VS 文件处理系统 文件处理系统 文件相互独立,程序随时编写 数据冗余和不一致、数据访问困难、数据孤立 存储信息时存在完整性问题(约束)、原子性问题(故障发生的不一致)、并发访问异常、...
数据库课程设计报告——班级事务管理系统.doc
当需要修复损坏的数据库时,数据库系统重新应用这些日志,寻找那些将要执行但未完成的任务。如果任何类似的事务的已经在数据库中反映,这一定是颠倒的,并且数据库必须回滚。 使用这种日志重新应用的技术,数据库...
实时数据库系统之实时事务调度算法.docx实时数据库系统之实时事务调度算法.docx实时数据库系统之实时事务调度算法.docx实时数据库系统之实时事务调度算法.docx实时数据库系统之实时事务调度算法.docx实时数据库系统...
实时数据库系统之实时事务调度算法.pdf实时数据库系统之实时事务调度算法.pdf实时数据库系统之实时事务调度算法.pdf实时数据库系统之实时事务调度算法.pdf实时数据库系统之实时事务调度算法.pdf实时数据库系统之实时...
本书是经典的数据库系统教科书《Database System Concepts》的最新修订版,全面介绍数据库系统的各种知识,透彻阐释数据库管理的基本概念。本书内容丰富,不仅讨论了关系数据模型和关系语言、数据库设计过程、关系...