关于事务回滚的操作。

关于事务回滚的操作,哪一些项目是需要事务回滚功能的?论坛需要吗?

0

4个回答

这要看具体情况,比如经典的转账就需要回滚

1
qq_36593316
中国梦程序梦 发邮件提醒发送成功
2 年多之前 回复
qq_36593316
中国梦程序梦 回复pkaihao123: 发红包
2 年多之前 回复
com_it
青鸟路过佳诚 回复pkaihao123: 还有很多啊,只要是你想让事务不成功的时候回到原来的状态都需要回滚。比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删除成员,但是部门删除成功了,删除成员的时候出异常了。这时候我们希望如果成员删除失败了,之前删除的部门也取消删除,这种情况你也可以回滚该事务
2 年多之前 回复
pkaihao123
pkaihao123 除了转账还有别的吗?
2 年多之前 回复

经典的转帐项目需要,嗯,有的论坛也是需要的

1
qq_34651407
土申日月羊 这些都是要保证数据的一致性的,
2 年多之前 回复
qq_34651407
土申日月羊 比如聊天记录的回看,有的论坛也涉及金钱交易,其中就有转账项目
2 年多之前 回复

主要是看你的业务是否需要保证数据一致性。是否对于失败有回滚机制

0

当对多表进行操作的时候。一个表单的数据变化,会影响到另外一张表的数据变化,此时最好用事务处理一下。

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
简单单解决你的事务回滚问题
/** * 用户登录接口 * * * 1明确事务方法前的命名规则 * 2保证事务方法执行的时间尽可能的短,不允许出现循环操作,不允许出现RPC等网络请求操作 * 3不允许所有的方法都使用事务,节省服务器性能和缩短数据库连接时间 * 4如果出现有多个地方需要事务回滚时,使用自定义或原有的异常进行抛出,异常必须继承RunTime
mysql(九)事务操作(回滚)
事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性。   举例:有这样一张表   从表里可以看出张三的资金里有850元,李四的资金有632元 假如张三向李四划款20元,那么张三的资金应该减20,李四的资金应该加20 UPDATE usr SET zij = zij - 20 WHERE yh
浅谈Spring中的事务回滚
 使用Spring管理事务过程中,碰到过一些坑,因此也稍微总结一下,方便后续查阅。1.代码中事务控制的3种方式编程式事务:就是直接在代码里手动开启事务,手动提交,手动回滚。优点就是可以灵活控制,缺点就是太麻烦了,太多重复的代码了。声明式事务:就是使用SpringAop配置事务,这种方式大大的简化了编码。需要注意的是切入点表达式一定要写正确。注解事务:直接在Service层的方法上面加上@Trans...
关于java中MySQL的事务回滚
在开发中,我们最不希望出现的一件事就是在对数据库进行增删改查的时候,由于某些原因不能够一次性没有提交完,结果在数据库表中出现脏数据。而我们需要保证数据数据的完整性。事务正好为我们解决了此烦恼。public boolean DeleteSeatInfo(Seat seat){ Connection conn = null; PreparedStatement ps =
事务异常类型和回滚操作
使用spring难免要用到spring的事务管理,要用事务管理又会很自然的选择声明式的事务管理,在spring的文档中说道,spring声明式事务管理默认对非检查型异常和运行时异常进行事务回滚,而对检查型异常则不进行回滚操作。 那么什么是检查型异常什么又是非检查型异常呢? 最简单的判断点有两个: 1.继承自runtimeexception或error的是非检查型异常,而继承自exceptio
C#数据库编程---事务回滚
事务的四个特性之一是原子性,其含义是指对于特定操作序列组成的事务,要么全部完成,要么就一件也不做。如果在事务处理的过程中,发生未知的不可预料的错误,如何保证事务的原子性呢?当事务中止时,必须执行回滚操作,以便消除已经执行的操作对数据库的影响。 一般的情况下,在异常处理中使用回滚动作是比较好的想法。前面,我们已经得到了一个更新数据库的程序,并且验证了它的正确性,稍微修改一下,可以得到: //
java 事务回滚失败
Spring-Java事物回滚失效处理最近在做项目中,无意间发现有个类在抛事物回滚操作,数据也正常的插入到数据库当中了,于是仔细查看看一下具体原因。 一切还是要从Java的检查型异常和非检查型异常说起。 那么什么是检查型异常什么又是非检查型异常呢?  最简单的判断点有两个:     1.继承自RuntimeException或Error的是非检查型异常,而继承自Exception的
spring框架多个数据库操作需统一提交事务回滚机制解析以及解决办法
转自:http://www.cnblogs.com/0201zcr/p/5962578.html 1、遇到的问题   当我们一个方法里面有多个数据库保存操作的时候,中间的数据库操作发生的错误。伪代码如下: public method() { Dao1.save(Person1); Dao1.save(Person2); Dao1.save(Perso
JDBC 实现事务的回滚
使用JDBC操作事务       再java项目中导入jar包  ——mysql-connector-java-5.1.7-bin.jar;            Connection 客户端连接对象          1.  Connection.setAutoCommit(boolean );//设置自动提交模式,false表示禁用自动提交模式;          2.    用Sav
spring事务回滚规则
spring事务回滚规则 指示spring事务管理器回滚一个事务的推荐方法是在当前事务的上下文内抛出异常。spring事务管理器会捕捉任何未处理的异常,然后依据规则决定是否回滚抛出异常的事务。 默认配置下,spring只有在抛出的异常为运行时unchecked异常时才回滚该事务,也就是抛出的异常为RuntimeException的子类(Errors也会导致事务回滚),而抛出checked异常则
EntiryFramework中事务操作(三)事务回滚数据模型和数据库不对应问题
一、关于事务回滚数据模型和数据库不对应问题 1.在使用事务时,无论是使用DbContextTransaction,还是使用TransactionScope,如果在事务中出现异常而回滚,都有可能出现这种情况,数据库数据已经回滚,但是实体模型缓存没有回滚。出现数据的不一致行。 2.这种情况出现的原因:    1.EF中对于查询的实体对象在内存中有缓存,用于数据的状态跟踪,提升性能。    2.
Hibernate的编程细节——事务回滚
一 事务回滚代码 private static void updateEmp() { //修改用户 //获取一个会话 /* Session session=MySessionFactory.getSessionFactory().openSession();
数据库的事务,事务的特性以及回滚
事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转账工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把它们看成一个事务。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。 针对上面的描述可以看出,事务的提出主要是为了解决并发情况下保
Hibernate(1)Hibernate简介和简单示例,了解Hibernate事务回滚用法
1 Hibernate简介 Hibernate是一个orm(object relation mapping 对象关系映射)框架,处于项目的持久层,也叫持久层框架(持久层框架还有ojb等)。 Hibernate本质就是对JDBC进行了轻量级的封装。 2 使用Hibernate的好处①引入Hibernate可以使工作人员角色细化,让程序员更关心业务流程。让数据库人员更关注数据库相关的各种操作。 ②分层
Spring练习:JDBC模板和事务回滚
SSH框架是每个学生毕业前都必须掌握的一门技术,所以这里就用Spring的JDBC模板和自定义异常让事务回滚来做一个练习。主要用到的是spring和struts2框架来操作,这里暂时没用Hibernate来对数据进行操作。 一、练习要求。 要求写一个用户购买股票的项目,用户先开户后登陆,可以在里面买股票和卖股票,当买股票金额超过用户金额时就报异常让事务回滚,用户卖出股票时超过持有数量报异常让事
java 事务回滚案例
疑问,确实像往常一样在service上添加了注解 @Transactional,为什么查询数据库时还是发现有数据不一致的情况,想想肯定是事务没起作用,出现异常的时候数据没有回滚。于是就对相关代码进行了一番测试,结果发现一下踩进了两个坑,确实是事务未回滚导致的数据不一致。 下面总结一下经验教训: Spring事务的管理操作方法 编程式的事务管理 实际应用中很少使用 通过
spring 简单实例 事务回滚
自己做的一个简单的spring运用实例,主要是关于事务回滚的一个小例子,希望对还在纠结事务回滚的童靴有点帮助。。。
事务处理程序
/* This program reads a random access file sequentially, updates data already written to the file, creates new data to be placed in the file, and deletes data previously in the file. */ #incl
SSM框架——以注解形式实现事务管理,回滚数据库操作
配置mybatis的事务管理,实现开发中,事务是必不可少的。本篇作为对上一篇的补充,说明在SSM框架中如何使用注解的形式进行事务管理。 什么是事务?           在编写业务的过程中,会需要进行事务处理,当需要执行多条插入语句时,如果前几条成功,而最后一条失败,那么我们需要回滚数据库操作,保持数据的一致性和完整性,此时,就需要利用DB的事务处理。事务是恢复和并发控制的
Android中sqlite基本使用2,(使用事务实现数据完成或回滚)
还是在上一篇中的例子基础上写的,绿色部分就是实现事务的代码: 核心代码如下: activity_main.xml     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="match_parent"
php中对MYSQL操作之事务控制,回滚
php中对MYSQL操作之事务控制,回滚
如何在mysql下实现事务的提交与回滚
最近要对数据库的数据进行一个定时迁移,为了防止在执行过程sql语句因为某些原因报错而导致数据转移混乱,因此要对我们的脚本加以事务进行控制。 首先我们建一张tran_test表 CREATE TABLE tran_test( f1 VARCHAR(10) NOT NULL, f2 INT(1) DEFAULT NULL, PRIMARY KEY (f1) )ENGINE=INNODB CHARS
Grails 回滚编程性事务
本文总结了编程性事务和声明性事务回滚的两种方法,并提到了一个非常容易忽视的问题。 回滚编程性事务 编程性事务在Grails中是通过withTransaction方法实现的,它接收一个闭包,并且会把TransactionStatus传给这个闭包。要想回滚事务,调用TransactionStatus上的setRollbackOnly()方法即可。下面是一个账户转账的例子: 01 A
嵌套事务回滚示例
参二层: -- 测试表 create table T1 ( ID int identity(1,1), Code nvarchar(10)  ) Go -- 存储过程 create procedure p_RollbackTest  as  begin set nocount on declare @n int = 0  begin tran outTran
ssm的事物回滚实现
ssm的事物回滚实现
Spring mvc注解方式使用事务回滚
项目名:1ma1ma jdbc.xml                p:driverClassName="${jdbc.driverClassName}"            p:url="${jdbc.url}"            p:username="${jdbc.username}"            p:password="${jdbc.password}"
java mysql事务回滚
首先最原生态的com.mysql.jdbc.Driver数据源进行回滚。 1、spring配置文件<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName">
mysql事务的提交和回滚和数据引擎有关
mysql事务的提交和回滚数据引擎有关
java 数据库操作,事务回滚
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** *ja
MySQL事务回滚
什么是事务?所谓的事务,简单来说的话那就是指要做的或所做的事情,在计算机语中是指访问并可能更新数据库中各种数据项的一个程序单元。它就是将一个任务看成一个整体,如果中间有一处出错的话,那么事务就进行回滚,回滚到原来的状态。         事务必须满足4个属性:         原子性:事务在执行的时候,要做到“要么不做,要么全做”,也就是说不允许事务部分执行。         一致性
Spring事务之事务回滚、清理及提交
Spring事务之事务回滚、清理及提交
sqlite的事务回滚
@try {         if (sqlite3_exec(_db, "begin", NULL, NULL, NULL)==SQLITE_OK) {             NSLog(@"开启事务成功");         }         //写入需要执行的数据库操作,要不一起执行完成要不一起完蛋,实现任务的绑定,避免部分完成而造成的数据错乱  
wordpress transaction 事务处理,wordpress商城支付中的事务处理
在做wordpress支付插件开发过程中, 需要用到transaction事务处理, 但是看了下官方的文档, 发现很少有相关的说明。 一、 wordpress 不支持 transaction 事务处理 1-1) 再仔细看了wordpress的数据表结构, 都是myisam类型, 是无法支持事务的。 1-2) $wpdb 这个全局也没有事务操作的方法和函数 $wpd
Mysql-spring事务回滚
已经标记:@Transactional(rollbackFor={RuntimeException.class 并且没有网友说的try catch,已经抛出了RuntimeException,但是还是没有回滚。 是因为数据库的表,不支持事务!如果mysql不支持存储引擎,它将以MyISAM表创建表,这是非事务性表。 一般修改成InnoDB. 可使用下述语句之一检查表的标类型:  S
mysql事务回滚机制概述
应用场景:    银行取钱,从ATM机取钱,分为以下几个步骤        1 登陆ATM机,输入密码;     2 连接数据库,验证密码;     3 验证成功,获得用户信息,比如存款余额等;     4 用户输入需要取款的金额,按下确认键;     5 从后台数据库中减掉用户账户上的对应金额;     6 ATM吐出钱;     7 用户把钱拿走。     对于上面的取钱这个
PHP PDO事务回滚
<?php try{ $pdo=new pdo("mysql:host=localhost;dbname=xsphpdb", "root", "123456", array(PDO::ATTR_AUTOCOMMIT=>0));//最后是关闭自动提交 //$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT, 0);//这个是通过设置
MySQL数据库InnoDB存储引擎重做日志漫游
00 – Undo Log Undo Log 是为了实现事务的原子性,在MySQL数据库InnoDB存储引擎中,还用Undo Log来实现多版本并发控制(简称:MVCC)。 - 事务的原子性(Atomicity)   事务中的所有操作,要么全部完成,要么不做任何操作,不能只做部分操作。如果在执行的过程中发生   了错误,要回滚(Rollback)到事务开始前的状态,就像这个事务
Spring中@Transactional事务回滚(含实例详细讲解,附源码)
一、使用场景举例在了解@Transactional怎么用之前我们必须要先知道@Transactional有什么用。下面举个栗子:比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删除成员,但是部门删除成功了,删除成员的时候出异常了。这时候我们希望如果成员删除失败了,之前删除的部门也取
设置事务的回滚点
package cn.itcast.jdbc; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLExcept
Hibernate框架中的事务(隔离等级设置、事务提交、事务回滚)
1.Hibernate事务隔离等级设置: 一般情况下载属性文件中设置: hibernate.connection.isolation=4等号后面的数字表示意思如下: 1表示:读未提交 2表示:读已提交 3表示:可重复读 4表示:序列化 2.事务提交: Session session = HibernateUtil.getSession();//HibernateUtil
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 关于大数据培训 关于云计算