问题详情

阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某连锁酒店提供网上预订房间业务,流程如下: (1)客户查询指定日期内所有类别的空余房间数,系统显示空房表(日期,房间类别,数量)中的信息; (2)客户输入预订的起始日期和结束日期、房间类别和数量,并提交; (3)系统将用户提交的信息写入预订表(身份证号,起始日期,结束日期,房间类别,数量),并修改空房表的相关数据。 针对上述业务流程,回答下列问題。

【问题1】(3分) 如果两个用户同时查询相同日期和房间类别的空房数量,得到的空房数量为1,并且这两个用户又同时要求预订,可能会产生什么结果,请用100字以内文字简要叙述。 【问题2】(8分) 引入如下伪指令:将预订过程作为一个事务,将查询和修改空房表的操作分别记为R(A)和W(A,x) ,插入预订表的操作记为W(B,a) ,其中x代表空余房间数,a代表预订房间数。则事务的伪指令序列为:x = R(A),W(A,x-a),W(B,a)。 在并发操作的情况下,若客户1、客户2同时预订相同类别的房间时,可能出现的执行序列为:x1=R(A), x2 = R(A), W(A, x1-a1), W(B1,a1), W(A, x2-a2), W(B2,a2)。 (1)此时会出现什么问题,请用100字以内文字简要叙述。 (2)为了解决上述问题,引入共享锁指令SLock(X)和独占锁指令XLock(X)对数据 X进行加锁,解锁指令Unlock(X)对数据X进行解锁,请补充上述执行序列,使其满足 2PL协议,使其不产生死锁且持有锁的时间最短。 【问题3】(4分) 下面是实现预订业务的程序,请补全空玦处的代码。其中主变量:Cid,:Bdate, :Edate, :Rtype, :Num 分别代表身份证号,起始日期,结束日期,房间类别和订房数量。 SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; UPDATE 空房表 SET数量=数量 - :Num WHERE__(a)__; if error then { ROLLBACK; return -1;} INSERT INTO 预订表 VALUES (:Cid, :Bdate,:Edate,:Rtype,:Num); if error then { ROLLBACK; return -2 ; } __(b)__; .

未搜索到的试题可在搜索页快速提交,您可在会员中心"提交的题"快速查看答案。 收藏该题
查看答案

相关问题推荐

由于在TCP协议的传输过程中,传输层需要将从应用层接收到的数据以字节为组成单元划分成多个字节段,然后每个字节段单独进行路由传输,所以TCP是面向字节流的可靠的传输方式。()

●算术表达式采用逆波兰式表示时不用括号,可以利用(20)进行求值。与逆波兰式ab-cd+*对应的中缀表达式是(21)。

(20)

A.数组

B.栈

C.队列

D.散列表

(21)

A.a-b+c*d

B.(a_b)*c+d

C.(a-b)*(c+d)

D.a-b*c+d

●要在8*8的棋盘上摆放8个“皇后”,要求“皇后”之间不能发生冲突,即任何两个“皇后”不能在同一行、同一列和相同的对角线上,则一般采用(62)来实现。

(62)

A.分治法

B.动态规划法

C.贪心法

D.回溯法

●传值与传地址是函数调用时常采用的信息传递方式,(50)

(50)

A.在传值方式下,是将形参的值传给实参

B.在传值方式下,形参可以是任意形式的表达式

C.在传地址方式下,是将实参的地址传给形参

D.在传地址方式下,实参可以是任意形式的表达式

●若一种程序设计语言规定其程序中的数据必须具有类型,则有利于(22)。

①在翻译程序的过程中为数据合理分配存储单元

②对参与表达式计算的数据对象进行检查

③定义和应用动态数据结构

④规定数据对象的取值范围及能够进行的运算

⑤对数据进行强制类型转换

(22)

A.①②③

B.①②④

C.②④⑤

D.③④⑤

联系我们 用户中心
返回顶部