- 1
- 0
- 约 79页
- 2017-06-14 发布于北京
- 举报
问题背景 现实应用中,数据库的操作与操作之间往往具有一定的语义和关联性。数据库应用希望将这些有关联的操作当作一个逻辑工作单元看待,要么都执行,要么都不执行。 [例10.1] 飞机订票系统有两个表Sale和Flight,分别记录各售票点的售票数及全部航班的剩余票数: Sale(agentNo, flightNo, date, saledNumber) Flight(flightNo, date, remainNumber) 现有A0010售票点欲出售F005航班2008年8月8日机票2张。 问题背景 可编制如下程序: 查询F005航班2008年8月8日剩余票数A; (1) if (A2) 拒绝操作,并通知票源不足; else 更新A0010售票点的售票数; 更新F005航班的剩余票数; 问题背景 语句(2)是在当F005航班2008年8月8日的剩余票数大于请求票数时更新Sale和Flight表。该更新包括两个update操作: UPDATE Sale SET saledNumber=saledNumber+2 WHERE agentNo=‘A0010’ AND flightNo=‘F005’ AND date=‘2008-08-08’ UPDATE Flight SET remainNumber=remainNumber–2 WHERE flightNo=‘F005’ AND date=‘2008-08-08’ 问题背景 假设F005航班共有200个座位,2008年8月8日机票已售198张(其中被A0010售出20张),余票2张。 当第1个UPDATE语句执行成功时,即A0010已售票数更新为22。当系统发生故障重新提供服务时,如果又有售票点请求出售F005航班2008年8月8日机票2张,由于F005的剩余票数未更新(仍为2),因此满足其要求又出售了2张。 结果多卖了2张票! 问题背景 为解决上述问题,数据库管理系统引入了事务概念,它将这些有内在联系的操作当作一个逻辑单元看待,并采取相应策略保证一个逻辑单元内的全部操作要么都执行成功,要么都不执行。 对数据库用户而言,只需将具有完整逻辑意义的一组操作正确地定义在一个事务之内即可。 事务概念 对于用户而言,事务是具有完整逻辑意义的数据库操作序列的集合。 对于数据库管理系统而言,事务则是一个读写操作序列。这些操作是一个不可分割的逻辑工作单元,要么都做,要么都不做。 事务是数据库管理系统中竞争资源、并发控制和恢复的基本单元。 它是由数据库操作语言(如SQL)或高级编程语言(如Java、C、C++)提供的事务开始语句、事务结束语句以及由它们包含的全部数据库操作语句组成。 事务结束语句 事务结束的两种类型: 事务提交(commit):将成功完成事务的执行结果(即更新)永久化,并释放事务占有的全部资源。 事务回滚(rollback):中止当前事务、撤销其对数据库所做的更新,并释放事务占有的全部资源。 SQL Server事务模式 SQL Server数据库提供了三种类型的事务模式: 显式事务是指用户使用Transact-SQL事务语句所定义的事务,其事务语句包括: 事务开始:BEGIN TRANSACTION 事务提交:COMMIT TRANSACTION,COMMIT WORK 事务回滚:ROLLBACK TRANSACTION,ROLLBACK WORK 隐式事务是指事务提交或回滚后,系统自动开始新的事务。该类事务不需要采用BEGIN TRANSACTION语句标识事务的开始。 自动定义事务:当一个语句成功执行后,它被自动提交,而当执行过程中出错时,则被自动回滚。 SQL Server事务定义举例 [例10.2] 利用SQL Server提供的显式事务模式定义例10.1中的数据库更新事务。 BEGIN TRANSACTION UPDATE Sale SET saledNumber=saledNumber+2 WHERE agentNo=‘A0010’ AND flightNo=‘F005’ AND date=‘2008-08-08’ UPDATE Flight
您可能关注的文档
- CDMA2000通信流程.ppt
- 学校行政沟通与协调技巧.ppt
- 学科教学的德育机制.ppt
- CEO管理运营之道之性格.ppt
- CGPKVMOverIP培训-20090622-B-1.0.ppt
- ch02逻辑代数与硬件描述语言基础-lvaq.ppt
- 宁波城市概况与经济.ppt
- Ch05消费者市场和购买行为分析.ppt
- 安培力与洛伦兹力.ppt
- ch3-1-2离散傅里叶级数.ppt
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- 长春理工大学2024-2025学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 教科版一年级下册科学教学计划.docx VIP
- 早产儿脑室内出血预防专家共识(2025).pptx VIP
- 如何找回误删微信好友,微信好友一键恢复.doc VIP
- 2019年河南专升本考试公共英语(真题).pdf VIP
- 2025年房地产经纪人经纪人职业道德失范投诉处理专题试卷及解析.pdf VIP
- 2025年碳排放管理师林业碳汇区块链技术应用专题试卷及解析.pdf VIP
- 2025年拍卖师机动车拍卖成交价款支付与结算风险控制专题试卷及解析.pdf VIP
- 2025年AWS认证SQS消息多线程处理专题试卷及解析.pdf VIP
- 2025年房地产经纪人个人以不动产投资入股个税处理专题试卷及解析.pdf VIP
原创力文档

文档评论(0)