- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
事务的操作
《SQL+MySQL数据库》
软件技术专业教学资源库
主讲人:邵丹
DB
1、创建事务
使用SQL语句管理事务
开始事务
提交事务
回滚(撤销)事务
ROLLBACK TRANSACTION
COMMIT TRANSACTION
BEGIN TRANSACTION
2、语法分析
(1)一旦事务提交或回滚,则事务结束
(2)判断某条语句执行是否出错:
使用全局变量@@error
@@error只判断当前一条t-sql语句执行是否有错
为了判断事务中所有t-sql语句是否有错,可以对错误进行累计
如:
(3)事务可以嵌套
SET @errorSum=@errorSum+@@ERROR
3、事务的分类
显式事务
用BEGIN TRANSACTION明确指定事务的开始
最常用的事务类型
隐性事务
通过设置SET IMPLICIT_TRANSACTIONS ON 语句,将隐性事务模式设置为打开
其后的T-SQL语句自动启动一个新事务
提交或回滚一个事务后,下一个 T-SQL 语句又将启动一个新事务
自动提交事务
SQL Server 的默认模式
每条单独的 T-SQL 语句视为一个事务
4、事务案例
从李萍的账户转出1000元,存入王海的账户中
BEGIN TRANSACTION
/*--定义变量,用于累计事务执行过程中的错误--*/
DECLARE @errorSum INT
SET @errorSum=0 --初始化为0,即无错误
/*--转账:李萍的账户减少1000元,王海的账户增加1000元*/
UPDATE bank SET currentMoney = currentMoney - 1000
WHERE customerName = 李萍
SET @errorSum = @errorSum + @@ERROR --累计是否有错误
UPDATE bank SET currentMoney = currentMoney + 1000
WHERE customerName = 王海
SET @errorSum = @errorSum + @@ERROR
开始事务(指定事务从此处开始,后续的T-SQL语句都是一个整体)
累计是否有错误
4、事务案例
从李萍的账户转出1000元,存入王海的账户中
IF @errorSum0 --如果SQL语句执行出错
BEGIN
PRINT 交易失败,回滚事务
ROLLBACK TRANSACTION
END
ELSE
BEGIN
PRINT 交易成功,提交事务,写入硬盘,永久的保存
COMMIT TRANSACTION
END
GO
PRINT 查看转账事务后的余额
SELECT * FROM bank
根据执行是否有错误,决定提交事务,或撤销事务
如果有错,则回滚操作,事务结束
如果成功,则提交操作,事务结束
4、事务案例
转账1000元,转账失败的情况
转账事务前
转账事务过程中
转账事务结束后
4、事务案例
转账800元,转账成功的情况
转账事务前
转账事务过程中
转账事务结束后
5、事务的练习
(1)批量插入学生考试成绩
(2)训练要点:使用事务向表中插入多条记录
(3)需求说明:
批量插入参加今天“计算机基础”课程考试的十名学生成绩
如果输入的成绩大于100分,将违反约束
4、事务的练习
BEGIN TRANSACTION
DECLARE @errorSum INT
SET @errorSum=0
/*--插入数据--*/
… …
INSERT INTO Result(StudentNo,SubjectNo,ExamDate,StudentResult)
VALUES(10012,1,2009-5-20,102) --分数违反约束
SET @errorSum=@errorSum+@@ERROR
… …
IF(@errorSum0) --如果有错误
BEGIN
PRINT 插入失败,回滚事务
ROLLBACK TRANSACTION
END
ELSE
BEGIN
PRINT 插入成功,提交事务
COMMIT TRANSACTION
END
THANKS
谢谢聆听
黑龙江农业经济职业学院
您可能关注的文档
- 20 机械测绘与计算机绘图 基准特征创建与编辑 课件:基准特征创建与编辑.pptx
- 20 机械测绘与计算机绘图 特征生成失败及其解决方法 课件:特征生成失败及其解决方法.pptx
- 20 机械测绘与计算机绘图 添加装配约束 课件:添加装配约束(实操篇-装配体编辑).pptx
- 20 机械测绘与计算机绘图 阵列驱动阵列 课件:阵列驱动零部件阵列(实战篇-螺钉阵列).pptx
- 100个自由组课典型工作任务或重点技能模块 新康辉培训案例集 2、票务中心培训.ppt
- 100个自由组课典型工作任务或重点技能模块 新康辉培训案例集 4、会议接送机培训4.ppt
- 2018食品工程原理 流体流动阻力 速度分布及阻力计算.pptx
- 2019食品加工技术专业 社会培训 江苏大喜来食品有限公司培训——企业文化综合.ppt
- 3104焙烤食品生产技术职业技能训练库 31047家庭面包家作技术 2017-关于网传水洗面包事件的分析.ppt
- AdWords广告营销 综合案例分析 Google Ads 精选案例-天猫“双十一”如何火遍海外?YouTube这波操作666.pptx
- SQL Server+MySQL数据库 视图的环境创建方法 11.2视图的环境创建方法.pptx
- SQL Server+MySQL数据库 数据库的发展 1.3MySQL数据库的发展.pptx
- SQL Server+MySQL数据库 子查询 8.4子查询.pptx
- UI设计师岗位典型工作任务 应用UI界面设计实战体育类APP布局与排版 UI-032应用UI界面设计实战体育类APP布局与排版.pptx
- 安装工程识图与施工工艺 教学ppt 建筑消防自动喷淋灭火系统识图与施工工艺.ppt
- 斑铜制作技艺 铜商文化与铜都会泽 会泽会馆.ppt
- 办公自动化 初识计算机硬件系统 CPU的性能指标1.pptx
- 包装材料性能检测及选用 食品包装常见问题及包装材料的检测 知识点43-软塑包装材料的阻隔性与食品安全 1.ppt
- 包装材料性能检测及选用 纸包装材料性能要求与检测标准 包装用铜版纸种类及特点.ppt
- 包装策划与营销 创意结构 5-3包装策划与设计——结构创意.pptx
最近下载
- 年产1500吨冷冻鱼丸工厂设计.docx VIP
- 新教材人音版一年级音乐上册(艺术唱游)全册教案(全30页)(2024年) .pdf VIP
- 耻骨上膀胱穿刺造瘘术评分标准(1).docx VIP
- 小区物业消防演练预案方案.docx VIP
- 2025年保安员考试必刷题库500道带答案(完整版).docx VIP
- 人才发展工作手册.docx VIP
- 人才发展工作手册(学习资料)人事管理好帮手.pdf VIP
- 3.5.1医院感染管理组织C.docx VIP
- 大数据与人工智能导论(厦门大学)学习通网课章节测试答案.docx VIP
- 2025-2026学年小学英语人教精通版2024四年级上册-人教精通版(2024)教学设计合集.docx
原创力文档


文档评论(0)