深圳office培训 深圳excel培训
深圳excel培训 深圳office培训
咨询服务
深圳office培训
深圳office培训
office培训
excel培训
ppt培训
vba培训
access培训
word培训
visio培训
project培训
outlook培训
数据库培训
深圳access培训
深圳sql培训
深圳office培训
 

银行转账业务设计案例


2016年6月22日 作者: 来源:

阅读下列说明,回答问题1至问题3,将解答填入对应栏内。
【说明】
   某银行的转账业务分为如下两类操作:
   (1)读取账户A余额到变量x,记为x=R(A);
   (2)将变量x值写入账户A中的余额,记为W(A,x)。
   从账户A向账户B转账金额x元的伪代码操作序列为:a=R(A),=a=a-X,w(A,a), b=R(B),b=b+x,W(B,b)。
   针对上述业务及规则,完成下列问题:
1.【问题1】
   根据业务规则,转账业务要么被全部执行,要么全部不执行,应如何保障?假设参与转账的账尸余额有大于等于。的约束,上述伪代码执行中可能出现什么情况,应如何处理?(100字以内)
2.【问题2】
   若允许对同一账号同时进行转账,要保证转账程序的并发执行,引入共享锁指令 SLock(b)和独占锁指令XLock(A)对数据A进行加锁,解锁指令Unlock(A)对数据A进行解锁。
   请补充上述转账业务的伪代码序列,使其满足2PL协议。
3.【问题3】
   若用SQL语句编写的转账业务事务程序如下:
   START TRANSACTION;
   SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
   UPDATE  Accounts
   SET  CurrentBalance=CurrentBalance-Amount
    WHERE AccountID=A;
   if error then  ROLLBACK;
   COMMIT;
   UPDATE  Accounts
   SET CurrentBalance=CurrentBalance+Amount
   WHERE AccountID=B;
   if error then  ROLLBACK;
   COMMIT;
   其中:Accounts为账户表,CurrentBalance为当前余额,Amount为新存入的金额。
   该事务程序能否保证数据的一致性?如不能,请说明原因并改正。(100字以内)


阅读:2049 上一则:生产计划管理系统设计案例 下一则:sql中游标的作用及应用详解

返回前页 返回顶部
温馨提示:本中心是深圳较为专业office培训机构、咨询及报名请先预约,电话:0755-82124110。
深圳地址:深圳红荔路四川大厦1109B-1110(3号龙岗线通新岭地铁站A出口10米)
热线:0755-82124110(福田、南山、宝安) 0755-22205758(罗湖、龙岗、龙华) 13510024571(东莞、惠州、珠海、广州)
北京地址:北京清华大学华业大厦三区三楼 版权所有:深圳万博计算机教育 粤ICP备11006947号-1
 
深圳信息系统项目管理师培训
深圳信息系统项目管理师培训 欢迎咨询!
您好!请点击这里咨询万博教育
深圳万博吴老师
您好!请点击这里咨询万博教育
深圳万博史老师
 
深圳信息系统项目管理师培训
深圳信息系统项目管理师培训