Главная » Просмотр файлов » Введение в системы БД

Введение в системы БД (542480), страница 266

Файл №542480 Введение в системы БД (Введение в системы БД) 266 страницаВведение в системы БД (542480) страница 2662015-08-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 266)

Объектно-реляз(ионнгие базы данных 1005 СКЕЙТЕ ТАВЬЕ ЕМР АЯ ЯУВСЕАЯЯ ОГ РЕКЯОК ( ВМРЕ СНАЯ(5), ЕИАМЕ СНАЯ(20), ЯАЬ МОМЕК1С, НОВВ1ЕЯ ЯЕТ ОГ ( АСТ1ЧТТХ ), ИОККЯ ГОК СОМРАИХ ) МЕТНОО КЕТ1КЕМЕМТ ВЕМЕР1ТЯ ( ) г НОМЕК1С Рис. 25.3. Переменные-отношения в качестве суперклассов и подклассов (это решвпие не рекомендуется) Пояснения. Переменная-отношение ЕМР имеет три дополнительных атрибута (ЯЯ(), В1КТНОАТЕ, АЭОКЕЯЯ), которые наследуются из переменной-отношения РЕКЯОМ (поскольку каждый экземпляр класса ЕМР также является (ч1ЯАл) экземпляром класса РЕЯЯОМ). Если переменная-отношение РЕКЯОН обладает какими-то методами, эти методы также наследуются.

Замечание. Переменные-отношения РЕЯЯОМ и ЕМР являются примерами так называемых супвртаблин и подтаблиц соответственно. В (13.12), а также в приложении Б эти понятия рассматриваются подробнее. Наряду с описанными вкратце расширениями, касающимися опрелеления данных, потребуются и расширения, связанные с манипулированием этими данными, как, например, показано ниже. ° Выражения пути, например ЕМР ВОЯКЕ ГОК.10САТ10М.ЯТАТЕ. В общем случае такие выражения могут возвращать скаляры, кортежи или отношения. Заметим, что в последних двух случаях компоненты таких кортежей или отношений сами могут быть кортежами или отношениями, например выражение ЕМР.НОВВ1ЕЯ.МАМЕ возвращает отношение. Следует отметить, что выражения пути записываются в порядке снижения иерархии вложения, а выражения пути, которые рассматривались в главе 24, — в порядке возрастания.

° Литеральные кортежи и отношения, которые могут быть и вложенными. ( 'ЕОО1', 'Яп(сЬ', 550000, ( ( 'ГооЬа11', 11 ), ( 'ВавеЬа11', 9 ) ( '1ВМ', ( 'Яап Лове', 'СА' ) ) ) (Реальный синтаксис может отличаться.) 1006 Часть П. Объектные и объектно-реляционные базы данных ° Операторы реляционного сравнения, например БОВБЕТ, ЯОВЯЕТЕО и т.д. (Примеры операторов взяты из рассматриваемого продукта. В этом продукте оператор ЯОВБЕТ на самом деле означает "собственное подмножество", а ЯОВЯЕТЕО— "подмножество".) ° Операторы для отслеживания иерархии классов. Заиечаиив. Здесь также требуется осторожность.

Вполне возможно, что результат выполнения запроса данных из отношения РЕЕВОМ вместе с соответствующими данными из отношения ЕМР не будет отношением. Фактически это означает нарушение фундаментального реляционного свойства замгазутости со всеми вытекающими отсюда плачевными последствиями. (В связи с этим в (25.31) — где такой результат называют "обкусанным возвратом" — беспечно замечают, что "программа клиента должна быть готова справиться со всеми сложностями обработки обкусанного возврата"!) ° Возможность вызывать методы в предложениях БЕЬЕСТ и ММЕКЕ в терминах языка Щ.. ° Возможность осуществлять доступ к отдельным компонентам внутри значений атрибутов, которые являются кортежами или отношениями.

Для краткого обзора практической реализации уравнения "переменная-отношение = класс" этого, пожалуй, будет достаточно. Теперь разберемся, что же тут плохого. Прежде всего отметим, что, как уже указывалось, переменная-отношение — это переменная, а класс — это тип. Так как же они могут быть одним и тем же? Одного этого достаточно, чтобы идею уравнения "переменная-отношение = класс" отбросить без дальнейшего обсуждения. Однако не будем торопиться, поскольку в связи с этим возникают и дополнительные вопросы, рассмотреть которые было бы весьма полезно. ° Из уравнения "переменная-отношение = класс" следуют уравнения "кортеж = объект" и "атрибут= (открытая) переменная экземпляра".

Таким образом, хотя (как было показано в главе 24) настоящий объектный класс — по крайней мере скаляр или "инкапсулированный" объектный класс — имеет методы и не имеет открытых переменных экземпляра, "объектный класс" переменной-отношения имеет открытые переменные экземпляра и лишь необязательно имеет методы (разумеется, он не "инкапсулирован*'). И снова возникает вопрос, как могут эти два понятия быть одним и тем же? ° Между определениями атрибутов, например Яй1 МОМЕК1С и МОККБ РОК СОМРйМУ, имеется значительное отличие.

Тип МОМЕК1С вЂ” это настоящий тип данных (равносильный настоящему, хотя и примитивному, домену). Он накладывает независимое от времени ограничение на значения, которые может законно принимать атрибут Яй1. Тип СОМРйМУ, напротив, ив является истинным типом ланных. Ограничение, которое он накладывает на значения атрибута МОККЯ РОК, зависит от врвгиени (оно, очевилно, зависит от текущего значения переменной-отношения СОМРйМУ). Фактически здесь стерты все различия между переменными-отношениями и доменами или согласно объектной терминологии между коллекциями и классами.

° Как мы уже видели, одни "объекты" кортежей могут содержать другие такие же "объекты". Например, "объекты" ЕМР воспринимаются как содержащие "объекты" СОМРйМУ. Однако в действительности они содержат не их, а указатели на эти 1007 Глава 25. Объектно-реляционные базы данных "содержащиеся в ннх объекты", и это нужно четко себе представлять. Предположим, что пользователь каким-то образом обновляет один из кортежей отношения СОМРАМХ (см, рнс. 25.!).

Тогла это изменение немедленно распространяется на все кортежи ЕМР, которые содержат данный кортеж СОМРАКХ. Заиечаггие. Указанные здесь последствия обновления не должны восприниматься как нежелательные — они были приведены лишь для объяснения эффекта такого обновления. Однако "модель" на рис. 25.1, которая использовалась нами в обсуждении, показана неверно: кортежи ЕМР содержат не кортежи СОМРАКХ, а лишь указатели на них. Этот аспект требует некоторых дополнительных пояснений.

а) Можно ли вставить кортеж ЕМР и задать значение для "содержащегося" в нем кортежа СОМРАКХ, которого в данный момент еще не существует в переменной-отношении СОМРАМХ? Если ответ будет лалолкигггегьиы.н, то задание типа СОМРАКХ для атрибута КОМКЕ РОВ не будет значить практически ничего, поскольку при этом на операцию вставки 1КБЕКТ не накладывается никаких ограничений.

А если ответ будет отринапгельиыт, то операция вставки 1МБЕВТ становится очень сложной, так как пользователь должен указать ие только допустимый "внешний ключ" СОМРАКХ.КАМЕ (как следовало бы поступить в аналогичной ситуации в реляционной системе), но и весь допустимый кортеж СОМРАКХ. Более того, в лучшем случае при указании всего кортежа СОМРАКХ системе будет повторно передана информация, которая ей уже известна, а в худшем — в случае ошибки пользователя при определении кортежа СОМРАКХ в целом корректная операция 1КБЕКТ выполнена не будет. б) Предположим, что лля переменной-отношения СОМРАМХ необходимо реализовать правило ограничения удаления ОК РЕРЕТЕ ВЕБТК1СТ (т.е. запретить удаление объекта компании, если в этой компании работают какие-либо сотрудники).

Допустим, что это правило может быть реализовано процедурным способом, скажем, с помощью метода ггг'. (Обратите внимание, что переменная-отношение ЕМР не имеет внешнего ключа, к которому можно было бы подключить декларативную версию этого правила.) Более того, обычные операции РЕДЕЕТЕ языка МОЕ для переменной-отношения ЕМР не должны теперь выполняться иначе, чем посредством вызова метода М. Как обеспечить соблюдение этого требования? Аналогичные замечания и вопросы относятся, конечно, и к другим правилам внешних ключей, например к правилам ОК РЕЬЕТЕ САБСАРЕ.

в) Также отметим, что при выполнении операции РЕЬЕТЕ для кортежа ЕМР "каскадное" удаление соответствующего кортежа СОМРАКХ, скорее всего, выполняться ие будет, несмотря на видимость того, что он "солержится" внутри кортежа ЕМР. Из сказанного выше следует, что речь идет вовсе не о реляционной модели. Фундаментальным объектом данных является не отношение. содержащее значения, а "отношение", содержащее значения и указатели. На самом леле такое 1008 Часть П. Объектные и объектно-сселяссионньсе базьс данных "отношение" не является настояшим отношением, по крайней мере в соответствии с реляционной моделью.

Иначе говоря, мы разрушили концептуальную целостность реляционной моделиз. ° Предположим, что определено представление Ч, которое является проекцией переменной-отношения ЕМР лишь по одному атрибуту НОВВ1ЕЯ. Представление Ч, конечно, также является переменной-отношением,но не базовой, а производной. Тогда, если уравнение "переменная-отношение = класс" верно, значит, представление Ч вЂ” также класс. А чта такое класс? Классы имеют методы.

Какие методы есть у предопавлеиил Ч? В рассматриваемом случае "класс" ЕМР имеет только один метод, а именно— НЕТ1НЕМЕМТ ВЕМЕР1ТЯ, который, очевидно, не применяется к "классу" Ч. Практически вряд ли было бы разумно, чтобы любые методы, которые применяются к "классу" ЕМР, применялись также к "классу" ч. Тем более это касается всех остальных методов. Таким образом, получается, что никакие методы не могут применяться для результата выполнения операции проекции, т.е. каким бы ни был результат, он на самом деле не является классом. (Его можно так назвапзь. однако от этого он не станет классом, поскольку может иметь переменные экземпляра, но не может содержать методов, тогда как ранее отмечалось, что истинный "инкапсулированный" класс обладает методами, но не имеет открытых переменных экземпляра.) Совершенно ясно, что при сравнении переменных-отношений и объектных классов на самом деле имеются в виду базовые переменные-отношения.

Характеристики

Тип файла
DJVU-файл
Размер
10,05 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6376
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее