Главная » Просмотр файлов » С.Д. Кузнецов - Основы баз данных

С.Д. Кузнецов - Основы баз данных (1121716), страница 95

Файл №1121716 С.Д. Кузнецов - Основы баз данных (С.Д. Кузнецов - Основы баз данных) 95 страницаС.Д. Кузнецов - Основы баз данных (1121716) страница 952019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Позже выяснилось, что маркетинговые ожидания компаний- гигантов оказались преувеличенными. (В частности, это было одной из основных причин падения компании 1пГопп!х.) Сегодня объектные расширения БОБ-ориентированных СУБД предлагаются пользователям лишь в качестве дополнительных, хотя и важных возможностей. Объектные расширения языка БОБ были зафиксированы в стандарте БОГ.;!999. В той или иной мере эти расширения поддерживаются во всех трех перечисленных выше продуктах. В настоящее время ближе всех к стандарту находятся СУБД компании Огас!е и ЮВ2 компании 1ВМ. Объектная модвль 3(Н. Объектные расширения Я >1.:1999 базируются на некоторой объектной модели, хотя эта модель в явном виде в стандарте не специфицируется.

Объектная модель Я)(.ее не является тождественной объектным моделям какого-либо объектно-ориентированного языка программирования или какой-либо объектно-ориентрованной системы баз данных. Однако при определении объектной модели Я.)Б участники процесса ' Компания гйвагга была создана Стоунбрейкером двя коммерциализации разработанной поц его руководством свободно доступной СУБД Ровсйгеа. " Конечно, зто не модель данных в смысле Кодла. 453 Курс Основы баз данных стандартизации тщательно проанализировали ряд других языков и систем с целью выяснения достоинств и недостатков их объектных моделей. По мнению авторов стандарта БО):1999, выработанная ими объектная модель похожа на объектную модель языка )ауа, но при этом адаптирована к природе языка Я.)Б как языка СУБД с наличием стабильно хранимых метаданных и данных*.

Объектная модель Б( Н.:1999 включает два основных отличительных компонента — структурные, определяемые пользователями типы данных (Пег 7)рте(7 Туре — И)7) и типизированные таблицы ГТуред ТаЫе). Первый компонент позволяет определять новые типы данных, которые могут быть гораздо более сложными, чем встроенные типы данных языка Я11.. При определении структурного (Л)Т требуется специфицировать не только содержащиеся в нем элементы данных, но и семантику типа данных, т. е. его поведение на основе интерфейса вызовов методов.

Второй компонент— типизированные таблицы — позволяет определять таблицы, строки которых являются экземплярами (или значениями) 1Л)Т, с которым явно ассоциируется таблица. Во многих отношениях строка типизированной таблицы похожа на объект класса в объектно-ориентированной системе.

В стандарте БО1 с1999 определены два пакета объектных свойств— минимальный (РКО006) и полный (РКО007), которым должны удовлетворять БО(;ориентированные ОРСУБД, претендующие на соответствие стандарту. Ниже будут перечислены свойства, включенные в каждый из пакетов, но смысл этих свойств будет понятен только после прочтения остальных разделов. Пакет РКО006 включает всего пять свойств: ° свойство э023 (»Валге лггис(игед (урез») — возможность определять |/ОТ и их методы с ограниченными возможностями; ° свойство 304! (»Валге ге)егепсе (урез») — возможность определять и использовать ссылки на экземпляры О()Т, входящие в типизированные таблицы; ° свойство 5051 («Сгеа(е гаЫе о) (уре») — возможность создания типизированных таблиц; ° свойство 5151 (»Туре ргеггуса(е») — возможность определения точного типа (в иерархии типов) экземпляра 1Л)Т; ° свойство Т041 ( Вал(с П)В да(а (уре лиррог( ) — возможность определения (.ОВ-типов в смысле Я)Е (с необязательной поддержкой операций, кроме операций сохранения и полной выборки).

Пакет РКО007 содержит девять дополнительных свойств: 'Далеко не факт, что ориентация на язык )ага была правильным решением. По мнению автора данного курса. причиной являются отнюдь не уникальные достоинства языка )ага (обсу:кдение этого языка не является задачей автора), а то, что во время разработки стандарта ЗО(л (999 язык Зала был особенно моден.

Помимо прочего, заметим, что для языка )ага (насколько известно автору) никогла не определялась формальная объектная молель. Лекция 19 Язык баз данных вйм объектные расширения ° свойство 5024 («Еппапсег) зггис~игег( !урез») добавляет к свойству 5023 рял развитых возможностей, в число которых входят возможности кодирования методов на языках, отличных от БО(, сравнения экземпляров 00Т и передача экземпляров $Н)Т в качестве параметров различных процедур; ° свойство $043 («Епйапсей ге~егепсе гурел») расширяет свойство Б041 возможностями определения ссылок с областью действия, автоматической проверки законности ссылок и т.

д.; ° свойство $071 («5Я:рагйз туипсйоп атз' Гуре пате гезо!ит(оп») позвОляет использовать путевые выражения Я Н. (ЯДА-ратй) в алгоритме разрешения типа; ° свойство БОЗ! («оибгаЫез») расширяет возможности свойства 5051, допуская организацию иерархии таблиц, аналогичной иерархии типов соответствующих 00Т; ° свойство з1 1 1 («Ой!7.У т диегу ехргеззюпз») обеспечивает возможность выборки только экземпляров указанного типа, без экземпляров любого нз его подтипов; ° свойство 5161 («Юибгуре ггеагтепг ) позволяет информировать среду БО(. о том, что некоторый экземпляр 00Т в действительности является экземпляром указанного подтипа; ° свойство 521! («(Ьег-йе!)пег) сазг )ипсч(оаз») разрешает определять подпрограммы, преобразующие экземпляры 00Т к другим типам; ° свойство 5231 ( ЮггисгигЫ гуре !осагогз») способствует доступу к экземплярам 00Т из прикладных программ; ° свойство 5023 («Тгап~огт7ипслопз») позволяет определять подпрограммы, преобразующие значения ()0Т в значения предопределенных типов данных, и наоборот.

Цели лекции Следует заметить, что в этой, безусловно, перегруженной материалом лекции мы преследуем две основные цели. Первая цель состоит в том, чтобы показать читателям, что в средствах определения структурных типов ЯИ. используются, по сути, все базовые возможности определения объектов базы данных и выборки данных, которые обсуждались в предыдущих лекциях.

Более того, определенные пользователями типы в Я )1 являются объектами первого класса; 00Т можно использовать в любой конструкции языка, в которой допускается применение предопределенного или конструируемого типа данных. Очень важно отдавать себе отчет в том, что наличие возможности определять пользовательские типы не делает язык БО) менее реляционным или более объектным. Эта возможность «всего лишь» фантастически повышает выразительную мощность языка.

Основы баз данных Курс Второй целью является демонстрация того, как на основе базовых механизмов языка удалось ввести дополнительные конструкции, которые действительно вплотную приближают ВО к объектному миру. Здесь, конечно, основную роль играет связка \) РТ и механизма типизированных таблиц, которые играют в Я;Н. своеобразную совмещенную роль классов и коллекций обьектов. Может оказаться, что материал этой лекции покажется сложным, поскольку для его усвоения не помешало бы иметь предварительную подготовку в области полнотиповых языков программирования, объектно-ориентированных языков и систем баз данных и т.

д. Хочется надеяться, что возникновение трудностей при изучении лекции не отпугнет читателей от этой темы, а напротив, послужит стимулом к изучению дополнительной литературы. Возможна и другая опасная ситуация. Краткость и некоторая формальность изложения может создать ложное впечатление тривиальности объектных расширений БО1.. В этом случае могу посоветовать перечитать предыдущие лекции курса, относящиеся к Я)1., считая, что везде, где используются предопределенные или конструируемые типы, применяются некоторые ШЭТ, а в тех случаях, где имеются таблицы, связываемые естественным соединением, используются типизированные таблицы. Думаю, это позволит оценить мощь новых возможностей ВО Введя этот необходимый контекст, перейдем к описанию соответствующих механизмов ВО1.:1999. Определяемые пользователями типы Один из основных упреков по адресу языка БО1., звучавший, в частности, в Первом манифесте, заключался в отсутствии каких бы то ни было возможностей хранить в базе данных данные, тип которых являлся бы не предопределенным, а определяемым пользователями.

Отрицательные последствия отсутствия такой возможности признавались и во Втором манифесте. В БО1.;1999 этот дефект был устранен. Как отмечалось в лекции 11, в стандарте поддерживается возможность определения пользователями двух разновидностей 1)РТ вЂ” структурных типов 1лугисуигед гуре) и индивидуальных типов 1дйг!пег гурев). Индивидуальные типы Напомним, что индивидуальным типом называется 1)РТ, основанный на единственном встроенном типе (например, тнткакп). Значения такого типа нельзя прямо использовать в операциях соответствующего базового типа, однако допускается явное приведение значений индивидуального типа к базовому типу Поясним это на примерах.

Пусть заданы следующие определения индивидуальных типов: 45б Язык баз данных ЯОЫ обьектные расширения Лекция 19 СВЕАТЕ ТУРЕ ЕМР ИО АБ 1ИТЕСЕВ Р1ИАЬ; СВЕАТЕ ТУРЕ РЕРТ ИО АБ 1НТЕСЕВ РХМАЬ; СЕНАТЕ ТУРЕ РВО ИО АЯ 1ИТЕСЕВ Р1ИАЬ; Таблицу ЕМР можно определить следующим образом (упрощенный вариант): СВЕАТЕ ТАВЬЕ ЕМР ( ЕМР 1Р ЕМР ИО, ЕМР МАМЕ УАВСНАВ(20), РЕРТ 1Р РЕРТ ИО, РВО 1Р РВО ИО)) Такое определение таблицы приведет к тому, что хотя все три индивидуальных типа определены на одном и том же базовом типе 1МТЕСЕВ, попытка выполнить запрос БЕЗВЕСТ ЕМР МАМЕ РВОМ ЕМР ГНЕВЕ ЕМР 1Р > РЕРТ 1Р," будет отвергнута системой (и это правильно, поскольку, скорее всего,запрос задан по ошибке). Но если действительно требуется сравнивать идентификаторы служащих с идентификаторами их отделов, то можно воспользоваться конструкцией явного приведения типа: ЯЕРЕСТ ЕМР МАМЕ РВОМ ЕМР ХНЕВЕ ГАБТ (ЕМР 1Р ТО 1ИТЕСЕВ) > ГАБТ ГРЕРТ 1Р ТО 1НТЕСЕВ); Аналогичным образом будет отвергнут запрос ЯЕЬЕСТ ЕМР МАМЕ, ЕМР 1Р + 5 БРОМ ЕМР ИНЕВЕ РЕРТ 1Р > 630) Чтобы указать системе, что действительно требуется выполнить операции целочисленного сложения и сравнения над значениями индивидуальных типов, запрос нужно переписать следующим образом: БЕЗВЕСТ ЕМР МАМЕ, ГАЯТ (ЕМР 1Р ТО 1ИТЕСЕВ) + 5 РВОМ ЕМР 457 Курс Основы баз данных угнеее сАят 1Рерт 1Р тО 1итецее1 > 630; У читателей могут возникнуть два законных вопроса: ° почему, вопреки обыкновению, мы не привели формальные синтаксические правила операции определения инливилуального типа? ° что означает ключевое слово РТНАЬ в приведенных примерах определения индивидуальных типов? На оба эти вопроса достаточно дать один (возможно, неожиданный) ответ.

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

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

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

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