1.5k views

Consider a relation geq which represents "greater than or equal to", that is, $(x,y) \in$ geq only if $y \geq x$.

create table geq
(
ib	integer	not null,
ub	integer	not null,
primary key ib,
foreign key (ub) references geq on delete cascade
);

Which of the following is possible if tuple (x,y) is deleted?

1. A tuple (z,w) with z > y is deleted
2. A tuple (z,w) with z > x is deleted
3. A tuple (z,w) with w < x is deleted
4. The deletion of (x,y) is prohibited

edited | 1.5k views
0
M NOT GETTING THIS ?hOW TO APPROACH ?

The table can be depicted as:

 ib (PK) ub (FK) z w=u u v=x x y

If (x,y) is deleted then from the above table:

• v<=y (as v=x)
• u<v<=y, u!=v (as v=x and ib is the Primary Key)
• w<v<=y (as w=u)
• z<w<v<=y, z!=w (as w=u and ib is the Primary Key)

As, it can be seen that w<v or w<x (as v=x) so C is the answer.

answered by Boss (34.2k points)
selected by
0
How C?
0
Updated.
+2
Hey Rajarshi,how are you assuming is w=u? and v=x? of couse if it is so, then definitely obvious. Also the question says x>w, it should have been x>=w. w != x, so how can we deduce?
0
After seeing this question i got know clue how to approach this one.Can u suggest how did u think of this way?

and please cite some source from where i can learn to solve this type of questions?
+2
@Bikram Sir @Arjun Sir, Little confusion please clarify 'y' is an element in ub which is a foreign key that means it should hold those elements which are present in lb but there is no 'y' in lb?
0
Thank you, very well explained. :)
ans is C.

here they have mentioned "on delete cascade"

deleting (x,y), the relation having x as a greater value will also b deleted. in (z,w) w<x (x is greater) therefore it will also be deleted.
answered by Loyal (8.3k points)
0
Thanks for explanation

tuple (x,y) is to be deleted so let's take it into relation.

Now we have to observe the effect on tuple (z,w) so we will take it also in our table.

So till now, we are having two tuples, (x,y) and (z,w). Now let's consider each option:

a) z>y means (y,z) tuple is there. So deletion of (x,y) doesn't give any cascade relation between (x,y),(z,w) and (y,z)

b) z>x means (x,z) exists in relation. But since 'ib' is primary key, we can't repeat 'x' .

c) w<x means (w,x) exists. On deleting (x,y), (w,x) should be deleted and then (z,w) to maintain DELETE CASCADE.

Hence option C is correct choice

answered by Active (1.4k points)
edited by
0
if u have any material related to this topic then pls send me that link.
0
@1gate_cracker,
No as such link, just go through the concepts of "Referenced integrity constraints"...u will get everything required...
0
thank u
Take following table as an example:
ib    ub
10  10
7     10
4     10

Now delete 10,10(x,y)
7,10 (z,w)
4,10(z,w)
are deleted too!
And w < x, that's all!
answered by Boss (17k points)
0
@Vijay for the above example 7 & 4 are z not w.pls make me correct if I am wrong.
+1

@vijay

 id(x) ub(y) 10 10 7 10 4 10

 id(z) ub(w) 10 10 7 10 4 10

on deleting (10,10)=(x,y)

yes (7,10) and (4,10) will be deleted.

so let take (7,10)=(z,w)

here z<x(7<10), z<y(7<10) and w=x(10=10)

same thing for (4,10)

then how (C) option is correct??

C. A tuple (z,w) with w < x is deleted

+2

@vijay
what that's all ??
ur example are showing w=x not w<x !!!!!

Consider the below example

lb ub
5 8
3 5
8 8
2 3

Deleting first tuple will force us to delete 2 nd tuple

And deleting 2 nd tuple will force us to delete 4 th tuple.

Now because of deletion of first tuple (5,3), 4 th tuple (2,3) should be deleted ... Here z = 2 and x = 5 and z<x

So option C) is the answer ...

answered by Loyal (6.7k points)
edited