Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Коннолли Т. -> "Базы данных. Проектирование, реализация и сопровождение. Теория и практика" -> 74

Базы данных. Проектирование, реализация и сопровождение. Теория и практика - Коннолли Т.

Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика — М.: Вильямc, 2003. — 1440 c.
ISBN 5-8459-0527-3
Скачать (прямая ссылка): bazidannihpproekt2003.djv
Предыдущая << 1 .. 68 69 70 71 72 73 < 74 > 75 76 77 78 79 80 .. 683 >> Следующая


¦ Для выполнения основной части операций выборки данных, необходимых в процессе эксплуатации базы данных, могут применяться пять фундаментальных операций реляционной алгебры: выборка, проекция, декартово произведение, объединение и вычитание множеств. Кроме этих операций, предусмотрены операции соединения, переоеченил и деления, которые могут быть выражены с помощью пяти основных операций.

Глава 4. Реляционная алгебра и реляционное исчисление

159 Реляционное исчисление — это формальный непроцедурный зык. в котором используются предикаты. Существуют две основные формы реляционного исчисления: реляционное исчисление кортежей и реляционное исчисление доменов.

В реляционном исчислении кортежей решается задача поиска кортежей, для которых предикат приобретает истинное значение. Переменной кортежа называется переменная, которая принадлежит к области определения указанного отношения, иными словами, переменная, допустимыми значениями которой являются только кортежи отношений.

В реляционном исчислении доменов переменные домена принимают свои значения в области определения атрибутов, а не кортежей отношений.

Реляционная алгебра логически эквивалентна безопасному подмножеству реляционного исчисления (и наоюрот).

Языки манипулирования реляционными данными подразделяются на процедурные и непроцедурные, трансформационные, графические, четвертого или пятого поколения.

ВОПРОСЫ л

4.1. В чем состоит разница между процедурным и непроцедурным языками? К каким из них относятся реляционная алгебра и реляционное исчисление?

4.2. Объясните смысл следующих терминов:

а) реляционно полный;

б) замыкание реляционных операций.

4.3. Дайте определение пяти основных операций реляционной алгебры. Определите с помощью этих пяти операций операции соединения, пересечения и деления.

4.4. Объясните, в чем состоят различия между пятью операциями соединения (тета-соединение, соединение по эквивалентности, естественное соединение, внешнее соединение и полусоединение). Приведите примеры, иллюстрирующие ваш ответ.

4.5. Покажите, в чем состоят сходство и различие реляционного исчисления кортежей и реляционного исчисления доменов. Подробно опишите различие между переменными кортежа и домена.

4.6. Определите структуру (правильно построенной) формулы в реляционном исчислении кортежей и реляционном исчислении доменов.

4.7. Объясните, почему выражение реляционного исчисления может стать опасным. Поясните ваш ответ на примере. Покажите, как можно обеспечить применение только безопасных выражений реляционного исчисления.

Упражнения

В следующих упражнениях используются схема Hotel, которая определена в

начале упражнений к главе 3.

4.8. Опишите отношения, которые будут сформированы в результате применения следующих операций реляционной алгебры:

а) nhotelHo(nprics „ (Room) )

б) t^Ho-El hctfcl Jo Kuora hDtelNa (1^c tel > Room)

В) 'IhDtelKama (Hotel I5^Hctel .liuteljfo * Room.hotelWo (°pricre » 50 (ROOtTl) , ,

160

Часть IE. Реляционная модель и языки г) Guest =>< 1 <ЛиссТс > .!гл-2С (Booking))

• Hotel се. лої No - koor "ioCLlHof0, ¦ - 50 (Room) 1

б) IlgllesrJJtlln. notelBr- (Booking IXgooking guratHo « Cu«ec ^UfB1-No GUeiSt) +

rihotelKt-,Ocity - IOTdc,; (Hotel )

4.9. Сформируйте эквивалентные выражения реляционного исчисления кортежей и реляционного исчисления доменов для каждого из запросов реляционной алгебры, приведенных в упражнении 4.8.

4.10. Опишите отношения, которые будут сформированы в результате применения следующих операций реляционного исчисления кортежей:

а) (H.hotelName | Hotel(H) h.city = 'London'}

б) (H.hote і Natie I Hotel(H) л (3R) (Room(R) л H.hotelNo = R hotelNc л R.price >

в) {H.hotelName J Hotel(H) л (Эв) (3G) (Booking (В) л Guest(G) л Н.hotelNo = В.hotelNo л B.guestNo = G.guestNo л

queбLNrпе = John Smith')}

г) {H.hotelName, G.guestName, Bi.dateFrom, B2.dateFrom |

Hote L (HJ л Guest (G) л Booking(Bl) л Bookjng (B2'1 л H.hotelNo Bi.hotelNo л G.guestNo Bl.guestNo л В2.hotelNo = Bi.hotelNo л B2-guestNo = Bl.guestNo л B2 dateFrom Ф Bl. dateFrom}

4.11. Приведите эквивалентные выражения реляционного исчисления доменов

и реляционной алгебры для каждого из запросов реляционной алгебры, приведенных в упражнении 4.10.

4.12. Сформируйте выражение реляционной алгебры, реляционного исчисления кортежей и реляционного исчисления доменов для следующих опросов, а) Составить список всех отелей.

б . Составить список всех отдельных номеров стоимостью меньше 20 фунтов стерлингов в сутки.

в) Составить список всех постояльцев с указанием их фамилий и городов, откуда они прибыли.

г) Составить список всех нпмероь в отеле Grosverif. с указанием стоимости и типа.

д) Составить список всех постояльцев, которые в настоящее время проживают в отеле Grosvenor.

е) Составить список всех номеров отеля Grosvenor с указанием всех сведений о них, включая фамилию постоя, іьца, проживающего в настоящее время в номере, если номер занят.

ж) Составить список всех постояльцев отеля Grosvenor с указанием всех сведений о них (включая атрибуты juestNo, gaestName и ues Address).
Предыдущая << 1 .. 68 69 70 71 72 73 < 74 > 75 76 77 78 79 80 .. 683 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100