社区
MS-SQL Server
帖子详情
关于事务的问题
laughsmile
2006-01-22 12:11:03
现在有2部分sql.第一部分sql是一系列update,第2部分sql是insert ...select...
第2部分的sql的select结果依赖于第一部分sql,也就是第一部分sql提交之后,然后执行第2部分sql才有意义.
但是问题是:现在要求第2部分sql如果出错,所有sql都要回滚,请问如何解决.
...全文
171
5
打赏
收藏
关于事务的问题
现在有2部分sql.第一部分sql是一系列update,第2部分sql是insert ...select... 第2部分的sql的select结果依赖于第一部分sql,也就是第一部分sql提交之后,然后执行第2部分sql才有意义. 但是问题是:现在要求第2部分sql如果出错,所有sql都要回滚,请问如何解决.
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
laughsmile
2006-01-22
打赏
举报
回复
我试试看,谢谢啦:)
OracleRoob
2006-01-22
打赏
举报
回复
--那就用嵌套事务
create table t1 (a int primary key)
go
set xact_abort on
go
begin tran
begin tran
insert into t1 values (1)
commit tran --提交第一部分SQL语句
select * from t1
--表中有数据
insert into t1 values (1) --主键冲突,整个事务中所有语句操作回滚,包括第一部分SQL语句的更新操作
commit tran
go
select * from t1
--结果表中没有记录
drop table t1
go
laughsmile
2006-01-22
打赏
举报
回复
TO wangtiecheng(cappuccino):
不好意思,可能我没有说清楚,你可能没有明白我的意思.
第一部分sql提交之后,然后执行第2部分sql才有意义.
如果第一部分sql与第2部分sql一起提交是没有意义的.但是我又想达到回滚的效果.
OracleRoob
2006-01-22
打赏
举报
回复
--在第一个例子中产生错误,但其它语句均成功执行且事务成功提交。
create table t1 (a int primary key)
go
set xact_abort off
go
begin tran
insert into t1 values (1)
insert into t1 values (1) --主键冲突,当前语句追加失败
commit tran
go
select * from t1
--结果表中有一行记录
drop table t1
go
--在第二个例子中,set xact_abort 设置为 on。这导致语句错误使批处理终止,并使事务回滚。
create table t1 (a int primary key)
go
set xact_abort on
go
begin tran
insert into t1 values (1)
insert into t1 values (1) --主键冲突,整个事务中所有语句操作回滚
commit tran
go
select * from t1
--结果表中没有记录
drop table t1
go
OracleRoob
2006-01-22
打赏
举报
回复
--当 SET XACT_ABORT 为 ON 时,如果 Transact-SQL 语句产生运行时错误,整个事务将终止并回滚。
set xact_abort on
--开始事务
begin tran
--第一部分SQL
--第二部分SQL
--提交事务
commit tran
return 0
小猫打螃蟹-第10届蓝桥杯Scratch省赛真题第2题
小猫打螃蟹,本题是第10届蓝桥杯Scratch省赛真题编程第2题,初级组和中级组都有此题,题目要求编程创作一个小猫打螃蟹的小游戏,一只在舞台左下角的小猫,发射子弹射击一只在舞台顶部的水平移动的螃蟹,击中螃蟹5次后程序结束!
【蓝桥杯选拔赛真题75】Scratch行走的螃蟹 第十五届蓝桥杯scratch图形化编程 少儿编程创意编程选拔赛真题解析
scratch行走的螃蟹 第十五届青少年蓝桥杯scratch编程选拔赛真题解析 一、题目要求 编程实现 1) 点击绿旗,角色、背景如图所示 2) 螃蟹每隔0.1秒切换一次造型、向右移动20步 3) 当螃蟹移动到舞台右侧边缘时,停止移动 二、案例分析 1、角色分析 角色:螃蟹 2、背景分析 背景:指定背景 3、前期准备 1、删除默认的小猫角色,并从角色库中添加螃蟹到角色列表中 2、从电脑中上传指定背景到舞台中,并删除默认的空白背景
Soft Robotics:两栖环境下螃蟹仿生机器人的行走控制
传统水陆两栖机器人依靠轮胎或履带与表面的接触及摩擦产生推进力,这种对于表面接触的依赖性限制了现有水陆两栖机器人在低重力环境下(如水中)的机动性。在广泛的生物载体中,螃蟹由于具有独特的步态,除此以外,螃蟹在水中使用鳃进行气体交换,使其可以在水下长期停留而不需浮到水面上,这些特性使其成为构建仿生水陆两栖机器人的良好载体。由此构建的螃蟹混合机器人实现了从陆地到水中的平稳过渡,并证明了其对两栖环境的适应性。图3 在陆地环境中,螃蟹的自然步态与电刺激下的步态。图4 在水下环境中,螃蟹的自然步态与电刺激下的步态。
EOJ Monthly 2018.5 (校赛网络同步赛) B. 数螃蟹
B. 数螃蟹Time limit per test: 2.0 secondsMemory limit: 512 megabyteskblack 在做数螃蟹的实验。按照「螃蟹爷爷的秘诀」一书上介绍的:由于东方神秘力量的影响,螃蟹的个数是一个完美的等差数列,例如:−2,−1,0,1,2,…。是的,kblack 的螃蟹比较神奇,有的时候螃蟹的个数可能会是负的。kblack 每天都去池塘记录螃蟹的个数。但...
元推理:螃蟹要蒸多长时间?豆包评价
《螃蟹蒸制的科学准则与实用指南》摘要:基于ECT-OS-JiuHuaShan框架,通过热力学与分子运动论推导出螃蟹蒸制时间的确定性公式。核心参数包括螃蟹质量、蒸汽温度和蛋白变性函数,给出小型蟹8分30秒、中型蟹12分钟、大型蟹15分30秒的精确时间。实践验证表明,该时间能确保蛋白最佳变性且避免过熟。同时提供气压修正、品种差异等微调建议,辅以"壳红筷透"的直观判断法,将传统经验转化为科学标准,实现从家庭烹饪到食品工业的精准控制。
MS-SQL Server
34,876
社区成员
254,635
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章