transaction事务小结

自治事务 PRAGMA AUTONOMOUS TRANSACTION 阅读详情
在执行update和insert、delete、truncate命令时,特别要注意,要开启一个事务,防止执行失败。

1.开启事务
begin transaction

2.测试两条删除命令
delete 表名
truncate table 表名

3.回滚

rollback transaction


4.成功后提交事务
commit


tip:
1.开启一次事务,只能执行一次回滚,即只能执行一次rollback transaction。

2.删除整个表内容,truncate要比delete效率高。

3.truncate命令只能删除整个表内容,而不能加where条件;若表有自增ID,如果使用该命令,再次插入数据后ID从1开始自增。

4.(特别注意).truncate命令可能不能被回滚;笔者在sql server2008测试不能使用回滚,但是在sql server2014可以回滚。鉴于该命令的不确定性,如果用truncate时需要在本地测试以下,以防发生错误。

5.一个细节,但是很重要。对于事务,如果开启之后,在进行增删改(update和insert、delete、truncate)操作之后,必须马上进行提交或者回滚。因为在进行提交或回滚之前,其他用户无法对该表进行任何操作(包括查询),导致的一个问题是,如果线上网站或者游戏中需要对表进行操作也是无法进行的。

6. select @@trancount可以查看当前事务的个数。默认0是没有开启事务。拓展:select @@ROWCOUNT可以查看上一操作返回的数目,包括select

update、insert、delete(笔者在sql server2008测试该命令)。

Transaction-事务 事务   数据库事务,是指作为单个逻辑工作单元的一系列操作,要么完全执行,要么完全不执行。事务中有的操作没有成功完成,整个事务中的所有操作都需要被回滚。 ACID   数据库事务拥有以下四个特性,习惯上称为:ACID。在数据库领域,ACID模型是最古老并且最重要的概念之一。 原子性(Atomicity):原子在当时被认为是最小的物质,也就意味着不可在分。事务被视为是不可分割的最小... 阅读详情

相关推荐

Isograph工具解析:FTA、RBD、FMECA与ETA在可靠性工程中的实战应用

可靠性工程是确保复杂系统安全稳定运行的核心学科,它通过量化方法评估和提升系统在特定条件下的无故障运行能力。其基本原理涉及对系统失效模式、概率及影响进行建模与分析,旨在将定性的工程经验转化为定量的决策依据。在工程实践中,故障树分析(FTA)和可靠性框图(RBD)是两种互为补充的关键技术:FTA采用自上而下的演绎逻辑,追溯导致顶事件发生的所有可能故障组合;RBD则采用自下而上的归纳逻辑,描述系统成功运行所需的功能结构关系。这些分析技术的工程价值在于能够提前识别设计薄弱环节,量化风险,并指导设计优化与维修策略制定

weixin_42522009的博客 315

事务方法中使用truncate会发生什么

场景 在一个spring项目的事务方法中(使用@transactional注解): 首先执行一个delete语句; 然后执行一个truncate语句; 最后再执行一个insert语句; 问题: 为什么delete语句和truncate语句执行成功,但insert语句虽然执行了,却没有提交? 解释: 首先,在没有事务注解的方法中,一切与数据库的交互都是由mybatis处理的, 而mybatis默认是...

miaoyibo12的博客 4743

完整内、外期货量化交易系统源码可售

支持客户登录校验,支持所有的实时行情和汇总报价功能、实时资讯(报价,列表,分时,分钟成交明晰,),多线程支持盘后收盘作业下载(日线,5分钟线,15分钟, 30分钟,60分钟线,),支持从服务器下载相关运行配置(来自服务器动态配置信息,如收盘日期等),实现状态条显示。收盘作业包括日线、5分钟线、15分钟线、30分钟、60分钟线、2小时线、4小时线每日分时走势。综合信息栏显示用户账户信息、合约信息、当日委托单记录、当日成交记录、当日平仓记录、当日跟单记录、当日(月/周)排行榜、下单栏、持仓信息;

qq_35600909的博客 1805

truncate和delete的一些东西

在Mysql中 TRUNCATE 是 DDL(数据定义语言), DELETE 是 DML(数据操作语言) 所以 truncate 操作是无法在事务中回滚的 不过在PostgreSQL中, truncate 操作是可以在事务中回滚的! 不过truncate和delete还是有区别的: Truncate会阻止其他事务,或者被其他事务阻止,这会降低整个系统的并发能力。 详见:http://...

qq_22994783的博客 297

将雷达连接到树莓派的串口

dev/ttyAMA0 是树莓派的主要 UART(用于 GPIO 引脚 8 (TXD) 和 10 (RXD))。通常,树莓派使用 GPIO 引脚 8 (TXD) 和 10 (RXD) 进行串口通信。树莓派上通常有两个串口:/dev/ttyS0 和 /dev/ttyAMA0。你需要确认雷达的 TX 和 RX 引脚,并与树莓派的对应引脚连接。VCC(电源)连接到树莓派的 3.3V 或 5V(根据雷达的要求)MR(Receive)连接到树莓派的 GPIO 8 (TXD)GND(地)连接到树莓派的 GND。

qq_45943628的博客 1465

Multisim仿真入门:单相半波可控整流电路从搭建到波形分析(附避坑指南)

本文为电力电子技术初学者提供了一份详细的Multisim仿真指南,手把手教你从零搭建单相半波可控整流电路。通过对比纯电阻、阻感负载及加入续流二极管后的波形变化,直观理解晶闸管触发、电感续流等核心原理,并附有实用的参数设置与常见问题避坑指南,帮助你将抽象理论转化为可视化的工程实践。

weixin_29208077的博客 343

Spring事物(Transaction)详解

事务(Transaction)是基于(RDBMS)的企业应用的重要组成部分。在软件开发领域,事务扮演者十分重要的角色,用来确保应用程序数据的完整性和一致性。简单来说,就是在数据层保障一系列的数据库操作同成功同失败(提交和回滚)。事务具有 4 个特性:原子性、一致性、隔离性和持久性,简称为 ACID 特性。原子性(Atomicity)一致性(Consistency)事务隔离(Isolation)持久性(Durability)

weixin_67224308的博客 1909

Ego Planner规划算法(下)——Ego Planner程序框架

本系列文章用于学习记录Ego-Planner规划算法的相关内容,本系列文章是在在Fast Planner规划算法系列文章的基础上,展开对Ego Planner的相关介绍,主要包括Ego Planner算法流程和程序框架两部分,主要学习资料是深蓝学院的移动机器人运动规划课程

慕羽★的博客 7257

事务(Transaction)简述

事务(Transaction)简述一、事务概述1.简述2.语法3.特性(ACID)二、并发问题1.脏读2.不可重复读3.幻读三、隔离级别四、不同隔离级别的锁的情况五、隐式提交 一、事务概述 1.简述 事务(Transaction)是由一系列对系统中数据进⾏访问与更新的操作所组成的⼀个程序执行逻辑单元。 2.语法 开始事务 mysql>begin; mysql>start transaction; 提交事务 mysql>commit; 撤销事务(回滚) mysql&g

weixin_45714175的博客 1041

【数字IC刷题】华为海思数字IC笔试题(3)详细解析版

【数字IC刷题】华为海思数字IC笔试题(3)详细解析版

MoorePlus的博客 2370

模型预测控制(MPC)解析(六):有约束的MPC简介

本文为阅读笔记,仅供学习交流使用!!! 先从一个例子开始,说明当原始设计的控制信号满足操作约束时,控制系统的性能会显著恶化。并且只要稍加修改,如果在控制器的实现中加入约束,则性能恶化的程度可以降低,从而产生约束控制的思想。 在学习有约束控制之前,先看一个控制系统在控制信号饱和和不饱和的情况下运行的例子。 例:无阻尼振荡器的数学模型如下: 采样周期为Δt=0.1\Delta{t}=0.1Δt=0.1,对应的离散时间状态空间模型为: 设计目标是:设计一个预测控制系统,使得系统输出跟踪单位阶跃响应越快越好。预

行者无疆的博客 6655

MySQL——事务(Transaction)详解

一、事务定义 Transaction 事务:一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元) 一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成 事务只和DML语句有关,或者说DML语句才有事务。这个和业务逻辑有关,业务逻辑不同,DML语句的个数不同 二、转账操作理解事务 关于银行账户转账操作,账户转账是一个完整的业务,最小的单元,不可再分——也就是说银行账户转账是一个事务 以下是银行账户表

m0_61706166的博客 622

机器人环境仿真软件:Webots_(9).路径规划与导航算法仿真实现

通过仿真,我们可以验证路径规划算法的有效性和鲁棒性,同时优化机器人在不同环境中的导航性能。动态窗口法是一种局部路径规划算法,通过在机器人当前速度空间中选择一个最优的速度窗口,使机器人在动态环境中安全地移动。算法的代价函数通常包括两个部分:从起始点到当前节点的实际代价(g-cost)和从当前节点到目标节点的估计代价(h-cost)。在World Editor中,选择“Insert”菜单,添加“Robot”对象,如“E-puck”或“Thymio”。Dijkstra算法的实现与A*算法类似,但不使用启发函数。

kkchenjj的博客 2006

Mysql的事务Transaction及索引Index的小结

Mysql的事务隔离级别: 1.READ UNCOMMITE 该隔离级别事务之间可以读取到其他事务未提交的数据,即为dirty read 2.READ COMMITED 读取其他事务提交的事务,也就是该事务开启之后到提交之前的操作对其他事务 都是不可见的,也成为不可重复读 3.REPEATABLE READ 可重复读,解决了脏读,但是无法解决幻读phantom read,幻读就是每次读取的数据 可能不一样 4.SERIALIZABLE 串行化读取,是事务隔离的最高级别,强制.

Smartbbbb的博客 975

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

SQLite 事务(Transaction)

    事务(Transactioin)是一个对数据库执行工作单元。事务(Transction)是以逻辑顺序完成的工作单位或序列,可以是由用户手动操作完成,也可以是由某种数据库程序自动完成。     事务是指一个或多个更改数据库的扩展。实际上,你可以把许多的SQLite查询联合成一组,把所有这些放在一起作为事务的一部分进行执行。   事务的属性(ACID)   原子性(Atomicity)...

冷月醉雪的博客 7741

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

MySQL Transaction(事务)学习笔记

一、资源入口 这次很快就找到了入口 在MySQL官方文档界面查找(MySQL Server—>MySQL Reference Manual—>选定自己的版本,当然也可以下载的 ) 不过说真的还是下载下来HTML比较方便点,打开Index.html就是目录了,我在其中搜索字段‘transaction’然后可以快速定位自己关心的内容。 我已经得到的信息glossary.html 词汇表 二、词汇表中关

我的学生时代 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Zookeeper的事务--Transaction

Zookeeper的事务--Transaction 1. zookeeper事务操作,其实只是其multi操作的简单封装: public List<OpResult> multi(Iterable<Op> ops) 基本操作:new Transaction(zk).create(...).setData(...)... .commit(); 因为每次返回 this ...

qq_29545781的博客 3793

START TRANSACTION - 开始一个事务块

SYNOPSIS START TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ] [ READ WRITE | READ ONLY ] DESCRIPTION 描述 这条命令开始一个新的事务。如果声明了隔离级别或者读写模式,那么新事务就使用这个特性,如同执行了SETTRANSACTION[...

weixin_30525825的博客 2880

SQLSERVER之事务TRANSACTION笔记

--【一】 --为什么需要事务? --假如有两个金额账户A和B,A账户有500元,B账户有2000元。现在要将A账户里的500元转账给B账户。但有个条件约束,设定为账户金额不能小于1. --执行语句如下: --UPDATE BANK SET MONEY=MONEY-500 WHERE NAME='A' --UPDATE BANK SET MONEY=MONEY+500 WHERE NAM

东南有大树的博客 8634

3分钟搞懂MySQL事务隔离级别及SET TRANSACTION影响事务

导读:MySQL支持SQL:1992标准中的所有事务隔离级别,使用SET TRANSACTION来设置不同的事务隔离级别或访问模式,我们一起实战下它的效果。我们都知道,MySQL的内置引...

Enmotech的博客 1415

PRAGMA AUTONOMOUS_TRANSACTION(自治事务)

这段时间遇到一个问题,程序里明明插入了一条记录,但在后边的一段Procedure中却查不到刚刚插入的记录,最后发现这个Procedure的定义中加入了PRAGMA AUTONOMOUS_TRANSACTION。 PRAGMA AUTONOMOUS_TRANSACTION中文翻译过来叫“自治事务”(翻译的还算好理解),对于定义成自治事务的Procedure,实际上相当于一段独立运行的程序段,这段程

田攀的日志 3万+

SET TRANSACTION - 设置当前事务的特性

SYNOPSIS SET TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ] [ READ WRITE | READ ONLY ] SET SESSION CHARACTERISTICS AS TRANSACTION [ ISOLATION LEVEL { READ COMMITTED |...

weixin_30293135的博客 608

ABAP程序内调用其他事务call transaction用法

、使用 PARAMETER ID 调用事务码并进行跳转(我自己用的) 使用场景:双击调用事务CS03并将参数填进事务CS03的PARAMETER ID里面。 注:如何查看事务CS03的PARAMETER ID:

yishangbing的博客 4060

SQL Server 中 事务( Transaction )

在 SQL Server 中,(事务)是一种处理单位,它由一系列操作组成,这些操作要么全部成功,要么全部失败。事务是数据库管理系统中的一个核心概念,用于确保数据的完整性和一致性。

去追随使你安宁的东西,去做你觉得有用的事情 2023

BEGIN TRANSACTION (Transact-SQL)

标记一个显式本地事务的起始点。 BEGIN TRANSACTION 使 @@TRANCOUNT 按 1 递增。   适用范围:SQL Server(SQL Server 2008 至当前版本),Azure SQL Database。  Transact-SQL 语法约定 语法

hejisan的专栏 9047

begin transaction/rollback transaction

http://msdn.microsoft.com/en-us/library/ms188929.aspx

snow365的专栏 2284
上一篇: jstl标签forEach用法小结,后台接收表单(字符串和数组)
下一篇: sql server导出excel步骤
Java-Tree
博客等级 码龄10年 1粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值