数据库管理系统常见问题|S3

在GATE 2012考试中提出了以下问题。
1)考虑以下数据项P和Q初始化为零的事务:

T1: read (P) ; read (Q) ; if P = 0 then Q : = Q + 1 ; write (Q) ; T2: read (Q) ; read (P) ; if Q = 0 then P : = P + 1 ; write (P) ;

T1和T2用于并发执行的任何非串行交织都会导致
(A)可序列化的时间表
(B)不可冲突的时间表可序列化
(C)可序列化的冲突时间表
(D)无法绘制优先图的时间表
答案(B)
如果发生以下情况, 则两个或多个动作发生冲突:
1)动作属于不同的交易。
2)至少一个动作是写操作。
3)动作访问相同的对象(读或写)。
如果满足以下条件, 则说时间表S1和S2是冲突等效的:
1)进度表S1和S2都涉及同一组事务(包括每个事务中的动作顺序)。
2)S1和S2中每对冲突动作的顺序相同。
当日程表与一个或多个串行日程表冲突等效时, 该日程表被称为可冲突序列化。
资源:时间表的Wiki页面
在给定的情况下, 有两种可能的串行时间表:
1)T1跟着T2
2)T2之后是T1。
在这两个串行计划中, 其中一个事务首先读取其他事务写入的值。因此, T1和T2的任何非串行交织都不会冲突可序列化。
2)考虑以下关系A, B, C。以下关系代数表达式的结果包含多少个元组?假设A U B的架构与A的架构相同。
数据库管理系统常见问题|S3

文章图片
Table AIdNameAge----------------12Arun6015Shreya2499Rohit11Table BIdNameAge----------------15Shreya2425Hari4098Rohit2099Rohit11Table CIdPhoneArea-----------------1022000299210001

(A)7
(B)4
(C)5
(D)9
答案(A)
Result of AUB will be following tableIdNameAge----------------12Arun6015Shreya2499Rohit1125Hari4098Rohit20The result of given relational algebra expression will beIdNameAgeIdPhone Area---------------------------------12Arun6010220002 15Shreya241022000299Rohit1110220002 25Hari4010220002 98Rohit2010220002 99Rohit119921000198Rohit2099210001

3)考虑上面的表A, B和C。以下SQL查询的结果包含多少个元组?
SELECT A.id FROMA WHEREA.age> ALL (SELECT B.age FROMB WHEREB. name = "arun")

(A)4
(B)3
【数据库管理系统常见问题|S3】(C)0
(D)1
答案(B)
” ALL” 的含义是A.Age应该大于子查询返回的所有值。表B中没有名称为” arun” 的条目。因此, 子查询将返回NULL。如果子查询返回NULL, 则条件对于A的所有行都为true(请参见
这个
有关详细信息)。因此, 选择了表A的所有行。
请参阅门角适用于所有上一年的论文/解决方案/说明, 课程提纲, 重要日期, 注释等。
如果你发现任何答案/解释不正确, 或者你想分享有关上述主题的更多信息, 请写评论。

    推荐阅读