Provide the equivalent domain relational calculus and relational algebra expressions for each of the tuple relational calculus expressions given in Exercise 4.10.
(a) {H.hotelName | Hotel(H) ? H.city = ‘London’}
(b) {H.hotelName | Hotel(H) ? (?R) (Room(R) ? H.hotelNo ? R.hotelNo?? R.price ? 50)}
(c) {H.hotelName | Hotel(H) ? (?B) (?G) (Booking(B) ? Guest(G) ? H.hotelNo ?
B.hotelNo?? B.guestNo = G.guestNo ?? G.guestName = ‘John Smith’)}
(d) {H.hotelName, G.guestName, B1.dateFrom, B2.dateFrom | Hotel(H) ? Guest(G) ?
Booking(B1) ? Booking(B2) ? H.hotelNo ? B1.hotelNo??
G.guestNo = B1.guestNo ?? B2.hotelNo = B1.hotelNo ?
B2.guestNo = B1.guestNo ?? B2.dateFrom ? B1.dateFrom}
(a) {H.hotelName | Hotel(H) ? H.city = ‘London’}
DRC: {hotelName | (?hNo, cty) (Hotel(hNo, hotelName, cty) ? cty = ‘London’)}
RA: ?hotelName (?city ? ‘London’ (Hotel) )
(b) {H.hotelName | Hotel(H) ? (?R) (Room(R) ? H.hotelNo ? R.hotelNo?? R.price ?
50)}
DRC: {hotelName | (?hNo, cty, rNo, hNo1, typ, prce) (Hotel(hNo, hotelName, cty) ?
Room(rNo, hNo1, typ, prce)???(hNo = hNo1) ? (prce > 50)) }
RA: ?hotelName (Hotel Hotel.hotelNo ? Room.hotelNo (?price ? 50 (Room)) )
(c) {H.hotelName | Hotel(H) ? (?B) (?G) (Booking(B) ? Guest(G) ? H.hotelNo ?
B.hotelNo?? B.guestNo = G.guestNo ?? G.guestName = ‘John Smith’)}
DRC: {hotelName | (?hNo, cty, gNo, gName, gAddress, hNo1, gNo1, dFrom, dTo,
rNo) (Hotel(hNo, hotelName, cty) ??
Guest(gNo, gName, gAddress)???
Booking(hNo1, gNo1, dFrom, dTo, rNo) ??(gNo = gNo1) ??
(hNo = hNo1) ??(gName = ‘John Smith’))}
RA: ?hotelName (?guestName ? ‘John Smith’ (Guest) Guest.guestNo ? guestNo (
Booking .Booking.hotelNo ? Hotel.hotelNo Hotel))
(d) {H.hotelName, G.guestName, B1.dateFrom, B2.dateFrom | Hotel(H) ? Guest(G) ?
Booking(B1) ? Booking(B2) ? H.hotelNo ? B1.hotelNo??
G.guestNo = B1.guestNo ?? B2.hotelNo = B1.hotelNo ?
B2.guestNo = B1.guestNo ?? B2.dateFrom ? B1.dateFrom}
DRC: {hotelName, guestName, dateFrom1, dateFrom2 | (?hNo, cty,
gNo, gAddress, hNo1, gNo1, dTo1, rNo1, hNo2, gNo2, dTo2, rNo2)
(Hotel(hNo, hotelName, cty) ??
Guest(gNo, guestName, gAddress)???
Booking(hNo1, gNo1, dateFrom1, dTo1, rNo1) ??
Booking(hNo2, gNo2, dateFrom2, dTo2, rNo2) ??
(hNo = hNo1) ??(gNo = gNo1) ??(hNo2 = hNo1) ??(gNo2 = gNo1) ??
(dateFrom1 ? dateFrom2))}
RA: Booking2(hotelNo, guestNo, dateFrom2, dateTo2, roomNo2) ?
?hotelNo, guestNo, dateFrom, dateTo, roomNo (Booking)
? hotelName, guestName, dateFrom, dateFrom2 (Hotel Hotel.hotelNo ? hotelNo
(Guest Guest.guestNo ? guestNo (Booking Booking.hotelNo ? Booking2.hotelNo
? Booking.guestNo ? Booking2.guestNo ? dateFrom ? dateFrom2 Booking2)))
You might also like to view...
MC Document method________creates an Element node with the a specified tag name.
a) createTag. b) createElement. c) create. d) None of the above.
An explicit constructor:
a. Cannot be called outside of the class it is declared in. b. Can be implicitly called by the compiler to perform a data type conversion. c. Does not initialize its class’s data members. d. Must take exactly one argument.
Which statement prints the floating-point value 123.456 right justified with a field width of 10?
a. System.out.printf("%d10.3", 123.456); b. System.out.printf("%10.3d", 123.456); c. System.out.printf("%f10.3", 123.456); d. System.out.printf("%10.3f", 123.456);
There are three modes for viewing the menus, panels, and tools in Photoshop: Standard Screen Mode, Full Screen Mode with Menu Bar, and Full Screen Mode.
Answer the following statement true (T) or false (F)