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

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

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

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

Для простоты будем считать, что оператор ОВОР ТУРЕ не выполняется, если удаляемый тип данных в текущий момент где-либо используется, например если на основе этого типа определен атрибут некоторого отношения. Допустимые представления Для того чтобы продемонстрировать важность понятия "допустимое представление"„ рассмотрим несколько более сложных примеров. ТУРЕ Р01НТ I* геометрические точки */ РОББВЕР САВТЕЯ1АН ( Х ВАТ?ОНА?, У ВАТ?ОИАЬ ) РОЯЯВЕР РОЗДАВ ( В ВАТ?ОНАЕ, ТНЕТА ВАТ?ОНАА ) В первую очередь, следует отметить, что тип РО?МТ имеет два разных допустимых представления, САВТЕЯ?АН и РОБА, отображающих тот факт, что точку на плоскости можно задать либо в декартовых, либо в полярных координатах.

(Безусловно, физическое представление этого типа в конкретной системе на самом деле может быть выполнено в декартовых координатах, в полярных координатах или посредством некоторого ыь Часть П. Релиз(ионная модель совершенно иного метода.) Каждое из этих представлений, в свою очередь, имеет по два компонента. Обратите внимание на то, что в отличие от предыдущего примера здесь явно задаются имена как допустимых представлений, так и их компонентов. При каждом объявлении допустимого представления автоматическиз определяются два более или менее очевидных оператора. ° Оператор выбора (зе)есгог) (с тем же именем, что и имя допустимого представления), который предоставляет пользователю средство задания или выбора значения рассматриваемого типа, осуществляемого посредством присваивания значений каждому компоненту данного допустимого представления.

° Набор операторов ТНЕ (по одному оператору для каждого компонента допустимого представления), обеспечивающих доступ к соответствующему компоненту данного допустимого представления. Рассмотрим на примере использование оператора выбора и оператора ТНЕ для типа Р01НТ. /* Задает точку с координатами х = 5.0, у = 2.5 «/ /* Задает точку с координатами х = ХХХ, у = УУУ "/ /* Здесь ХХХ и УУУ вЂ” перемвннме типа НАТ10НАЬ */ /* Задает точку с г = 2.7 и Х)зеХа = 1.0 */ /* Возврадавт координату х точки Р */ /* Здесь Р— переменная типа Р01НТ «/ /" Возврадает координату г точки Р "/ САНТЕЯ1йН ( 5.0, 2.5 ) САНТЕЯ1йН ( ХХХ, 111 ) РОЬАЕ ( 2.7, 1.0 ) ТНЕ Х ( Р ) ТНЕ й ( Р ) Замечание.

Очевидным является тот факт, что оператор выбора — это обобщение уже знакомого нам понятия литерал ()!гега!). Для того чтобы увидеть, как все вышесказанное работает на практике, будем считать, что физическим представлением значения типа Р01НТ являются фактические декартовы координаты точки (хотя в общем случае физическое представление может быть произвольным). Кроме того, допустим, что для описания этого физического представления системой предоставляются специальные защищенные операторы (выдвленные курсивом), которые затем будут использованы определителем типа для реализации операторов выбораь САЕТЕЯ1АН и РОЬАЕ, как, например, показано ниже. ОРЕНАТОЕ САНТЕЯ1АН ( Х НАТ10НАЕ, 1 ЕАТ10НАЬ ) НЕТОЕНЯ ( Р01НТ ) ВЕ01Н! Чйй Р РО1НТ! Х-компонент физического предствнлення Р:= Х ; У-компонент физического представления Р:= 1 ; Глава 5. Домены, отношения и базовые переменные-отношения 157 З Здесь слово "автоматически" означает следующее.

Ва-первы», кта бы ии апрвдвзлл дапугтимав предгн~авление /реачьиый пальзаватгль ичи систвма), ан такзюв атвечает за апредвленив гаатвелютвуюи!и» аператарав. Ва-втары», да тала лзамента, пока не будут апредилены указанныв аператары, процесс определения гаатветтпвующега допустимого предвз~авления считать завершенным нельзя. В Очевидно, чта определитель «пипа является игключенигм из общего правила, гласящего, чта пользователи не осведомлены а физическим представлении типа. КЕТОКН ( Р ) ЕНО ею ОРекйток; ОРЕВАТОК РОЬАК ( К КАТ10НАЬ, ТНЕТА ВАТ10НАЬ ) КЕТОВНЯ ( Р01НТ ) Ветокн ( сйктея?йн ( к * соя ( тнетй ), К * Я1Н ( ТНЕТА ) ) ) ЕНО ОРЕКАТОК Обратите внимание на то, что при определении оператора РОЬАВ используется оператор выбора САВТЕЯ? йН, а также встроенные операторы Я1Н и СОЯ.

Оператор РОЬАВ можно определить и по-другому, непосредственно с помошью зашишенных операторов. ОРЕКАТОК РОЬАК ( К КАТ?ОНАЬ, ТНЕТА КАТ?ОНАЬ ) ВЕТОВНЯ( Р01НТ ВЕО?Н; '»АК Р Р01НТ Х-компонент физического представления Р:= В ' СОЯ ( ТНЕТА ) Х-компонент физнчесхого представления Р:= В * Я1Н ( ТНЕТА ] КЕТОВН ( Р ) ! ЕНО ЕНО ОРЕВАТОК ) Зашишенные операторы используются также определителем типа для реализации необходимых операторов ТНЕ . ОРЕКАТОК ТНЕ Х ( Р Р01НТ ) КЕТОКНЯ ( КАТ10НАЬ ) ВЕТУКН ( Х-компонент физического представления Р ) ЕЮ ОРЕВАТОК ОРЕКАТОК ТНЕ Х ( Р Р01НТ ) КЕТОКНЯ ( Вйт?ОНА1 ) ) КЕТОКН ( Х-компонент физического представления Р ) ЕЮ ОРЕКАТОК ОРЕКАТОК ТНЕ К ( Р Р01НТ ) КЕТОКНЯ ( КАТ10НйЬ ) КЕТОКН ( ЯОКТ ( ТЕЕ Х ( Р ) *» 2+ ТНЕ Х ( Р ) ** 2 ) ) ) ЕЮ ОРЕКАТОК ) ОРЕКАТОК ТНЕ ТНЕТА ( Р Р01НТ ) КЕТОКНЯ ( КАТ?ОНАЬ ) ) кетокн ( Акстйн ( тне х ( Р ) / тне х ( Р ) ) ) ) ЕНО ОРЕВАТОК ) Здесь при определении операторов ТНЕ В и ТНЕ ТНЕТй используются операторы ТНЕ Х и ТНЕ Х, а также (встроенные по предположению) операторы ЯОКТ и АКСТАН.

Операторы ТНЕ К и ТНЕ ТНЕТй также можно определить непосредственно в терминах защишенных операторов. Предлагаем читателю сделать это самостоятельно в качестве упражнения. На этом наше пространное обсуждение типа Р01НТ можно считать завершенным. Однако следует понимать, что все вышесказанное применимо и к более простым типам, например к таким, как тип ОТХ. Вот несколько примеров использования оператора выбора для этого типа. 158 Часть 11. Реляционная модель ОТУ (1ОО) ()ТУ (()) ОТУ ( ( 01 - 02 ) * 2 ) Операторы ТНЕ этого типа могут использоваться следуюшим образом. ТНЕ ОТУ ( О ) ТНЕ ОТУ ( ( 01 - 01 ) " 2 ) Отметим, в частности, что, поскольку каждое значение всегда принадлежит какому-либо типу, совершенно некорректно говорить, например, что количество деталей определенной поставки равно 100.

Количество деталей — это значение типа ОТУ, а не 1ВТЕОЕК) В этом случае более правильно было бы сказать, что количество деталей равно ()ТУ(100), а не просто 100. В неформальном контексте мы часто не заботимся о такой точности и употребляем число 100 как удобное сокрашение для оператора выборки ОТУ(100)т. В частности, подобные сокращения использовались на рис. 3.8 (база данных поставшиков и деталей) и на рис. 4.5 (база данных поставщиков, деталей и проектов). В завершение приведем пример определения типа ЫВЕБЕО (отрезок). ТУРЕ ЫВЕБЕО РОЯЯВЕР ( ВЕО1Н РОУД, ЕВО РОУНТ ) ) Допустимые представления можно, конечно же, определять не только в терминах встроенных типов (как во всех предыдущих примерах), но и с помощью типов, определенных пользователем, так как это сделано в данном случае. Определение операторов В этом разделе особое внимание будет уделено определению операторов.

Для этого рассмотрим еше несколько примеров. В первом примере определяется пользовательский оператор лля встроенного типа ВАТ10ИАЬ. ОРЕВАТОВ АВЯ ( Е ВАТ10ВАЬ ) КЕТОКНБ ( ВАТ10НАЬ ) ) ВЕТОВВ(САБЕ инен 8 > 0.0 тней э8 ИНЕИ Е < 0.0 ТВЕН -Е ЕКР САБЕ ) ) БИО ОРЕВАТОК ) Оператор АВЯ (молуль числа) определен для одного параметра 8 типа ВАТ10НА1 и возвращает значение того же типа (другимн словами, такое выражение, как АВБ (АИТ1- АВТ2 ), принадлежит типу ВАТ10ИАЬ). 7 В контексте языка БОЛ мы делаем то же самое, ло по другой причиие, о именно — потому, чпю в языке Бйь' ие поддерживаютсл (пока) типы, определенные пользователем (см.

приложекие БА Глава 5. Домены, отношения и базовые переменные-отношения 159 В следующем примере для определения оператора 01ЯТ (вычисления расстояния между двумя точками) применяются типы данных, установленные пользователем. ОРЕКАТОК 01ЯТ ( Р! Р01НТ, Р2 Р01НТ ) КЕТОККЯ ( БЕНСТН ) КЕТОКН ( Н1ТН ТНЕ Х( Р! ) АЯ Х! ТНЕ Х( Р2 ) АЯ Х2 ТНЕ Х( Р! ) АЯ Х! ТНЕ Х( Р2 ) АЯ Х2: АЕНЯТН ( ЯОКТ ( ( Х! — Х2 ) *" 2 + ( Х! - Х2 ) ** 2 ) ) ) ) ЕНР ОРЕКАТОК ) Здесь предполагается, что БЕННЕТŠ— это определенный пользователем тип с допустимым представлением КАТ10НА(.

Обратите внимание на то, что для использования в соответствующих выражениях сокращенных имен употребляется предложение Н1ТН. В следующем примере рассмотрен оператор равенства "=" для типа Р01НТ. ОРЕКАТОК ЕО ( Р! Р01НТ, Р2 Р01НТ ) КЕТОКНЯ ( ВООЬЕАН ) КЕТОКН ( ТНЕ Х ( Р! ) = ТНЕ Х ( Р2 ) АНО ТНЕ Х ( Р! ) = ТНЕ Х ( Р2 ) ) ) ЕНО ОРЕКАТОК > Обратите внимание, что в выражении оператора КЕТБКН используется встроенный оператор "=" для типа КАТ10НА1,. Далее с целью упрощения будем считать, что обычное инфиксное обозначение "=" используется для оператора равенства (для всех типов, в частности и для типа Р01НТ).

Практическое определение данного инфиксного обозначения рассматриваться не будет, поскольку это всего лишь вопрос синтаксиса. Оператор "<ь для типа ЦТХ определяется следующим образом. ОРЕКАТОК ЬТ (О! 0ТХ, 02 ОТХ ) КЕТУКНЯ ( ВОГНАН ) КЕТЛЕ ( ТНЕ ОТХ ( ()1 ) < ТНЕ ()ТХ ( ()2 ) ) ЕНО ОРЕКАТОК Здесь в выражении оператора КЕТОКН используется встроенный оператор "<" для типа 1НТЕСЕК. И опять же, с этого момента и далее будем считать, что обычное инфиксное обозначение "<ь используется для этого оператора по отношению ко всем "упорядоченным" типам, каковым, в частности, является и тип ОТХ.

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

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

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

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