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

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

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

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

3.3. Рис. 3.3. Переменная-отношение ЕИР после удаления строки сотрудника с кодом 'Е4' Концептуально это можно прокомментировать таким образом: старое значение отношения ЕМР было заменено в целом совершенно другии, новым значением отношения. Конечно, старое значение (с четырьмя строками) и новое значение (с тремя строками) очень похожи, но концептуально они являются разными. На самом деле данная операция удаления строки, по сути, — это просто другой, упрошенный способ записи пля определенной операции реляционного присвоения, которая могла бы выглядеть примерно так. ЕМР := ЕМР МТНУБ ( ЕМР ИНЕЕЕ ЕМР)) = 'Е4' ) 1 (Замечание.

Как первоначальный оператор НЕЬЕТЕ, так и равносильный ему оператор присвоения записаны на языке Твгопа) 0 [3.3]. Ключевое слово МТННЕ используется в языке Ти1опа! В для реляционной операции разности. Подробности приводятся в главе 6.) 98 Часть 1. Основные понятия Как и при любом присвоении, здесь с концептуальной точки зрения сначала вычисляется выражение, расположенное справа от знака присвоения, а затем результат присваивается переменной, которая записана перед знаком присвоения (по определению перед знаком присвоения может быть, естественно, только переменная). В целом, как уже отмечалось, задача заключается в том, чтобы заменить "старое" значение отношения ЕМР "новым". Естественно, что операции 1ИБЕЕТ и МХАТЕ также по существу являются другой формой записи соответствующих реляционных операций присвоения.

Но вот что огорчает: во многих публикациях термин отношение используется, когда в действительности подразумевается переменная отношения (а также тогда, когда подразумевается само отношение, т.е. значение отношения). А это, как показывает практика, приводит к недоразумениям. Поэтому в дальнейшем здесь мы будем четко различать переменные отношений и сами отношения. Следуя примеру публикации (3.3], лля переменной отношения (ге!айоп чапаЫе) будем использовать термин переменная- отношение (сокращенный английский вариант — ге)чаг), и только его, во всех случаях, когда речь будет идти не об отношении, а о переменной отношения. Замечание.

Следует предупредить читателя, что термин иге!чаг" (переменная- отношение) не является общепринятым, хотя должен быть таковым! Мы действительно считаем, что очень важно различать сами отношения (т.е, значения отношений) и переменные отношений, хотя предыдущие издания настоящей книги также этим грешили и большая часть литературы по базам данных не прилает этому значения. ЗА. Смысл отношений В главе ! отмечалось, что столбцы в отношениях связаны с типами данныхз. А в конце раздела 3.2 мы говорили, что реляционная модель включает инеограниченный набор типов [данных)".

Помимо всего прочего, это означает, что пользователи могут определять собственные типы (а также, конечно, применять определенные системой или встроенные типы). Например, определять типы можно представленным ниже способом (снова воспользуемся синтаксисом языка Тц!ог)а! УЗ, причем многоточие "..." здесь заменяет определения, которые для нас сейчас не важны). ТУРЕ ЕМР1 ... ! ТУРЕ МАМЕ ТУРЕ ЮЕРТ! ... ! ТУРЕ МОМЕУ Тип ВМРЕ, например, можно рассматривать, как множество всевозможных номеров служащих, тип МАМŠ— как.множество всевозможных имен, и т.д. Теперь обратимся к рис. 3.4, который фактически представляет собой часть рис. 3.! с переменной-отношением ЕМР, которая была расширена с целью указания типов столбцов.

Как показано на этом рисунке, каждое отношение, точнее, каждое значение отношения, состоит из двух частей: набора пар иимя-столбца:имя-типа" (заголовок) и набора строк, согласованных с этим заголовком (тело), - Как мы увидим в главе 5, для типов данных чаще используют термин "дамены ", Глава 3. Введение в реляционные базы данных Рис. 3.4. Пример значения отношения ЕИР с отображением типов столбцов Замечание.

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

° Во-первых, данное отношение г и заголовок отношения г представляют определенный предикат или логическую функцию. ° Во-вторых, как упоминалось в главе 1, каждая строка в теле отношения г представляет собой определенное истинное высказывание, полученное из предиката путем подстановки определенных значений аргументов соответствующего типа вместо местадержателей или параметров этого предиката (реализация предиката). Например в случае, представленном на рис. 3.4, предикат будет следующим. Служащий с номерам ЕИР4 па фалпаии ЕИАИЕ работает в отделе с номерам 0ЕРТ$ и получает зарплату ЯА1АЯУ. Здесь параметрами являются ЕИР4, ЕИАИЕ, йЕРТ$ и ЯЫАЕУ, которые, конечно же, соответствуют четырем столбцам переменной-отношения ЕИР.

Вот примеры соответствующих истинных утверждений. Служащий с намером 'Е1 ' по фамилии '1 орвг' работает в отделе с номером '01 ' и получает зарплату 40 тыс. долларов в год. (Получено путем подстановки в параметр ЕИР4 значения 'Е1', в параметр МАИŠ— значения '1юрег', в параметр ЮЕРТ$ — значения '01' и в параметр БА1АЕУ вЂ” значения 40Е.) Служащий с номером 'Е2' по фамилии 'Сйела' работает в отделе с номером '01 ' и получает зарплату 42 тыс. долларов в год. (Получено путем подстановки в параметр ЕИР$ значения 'Е2', в параметр ИАИЕ— значения 'Сйепд', в параметр 0ЕРТ$ — значения 'б1' и в параметр ЕА(АЕТ вЂ” значения 42К.) Короче говоря: ° типы — это объекты (множества объектов), которые можно обсуждать; ° отношения — это факты (множества фактов), касаюшиеси объектов, которые можно обсуждать. (Есть прекрасная аналогия, которая может помочь вам понять смысл и запомнить эти важные определения: Типы связаны с отношениями точно так, как существительные связаны с предложениями.) В нашем примере то, что мы можем обсуждать, — это номера служащих, их имена, номера отделов и значения денежных сумм, а то, что мы можем 1ОО Часть 1.

Основные попятил сказать об обсуждаемом, — это истинное высказывание такого вида; "Служащий с определенным номером служащего имеет определенное имя, работает в определенном отделе и получает определенную зарплату". Из вышесказанного следует, что; ° во-первых, необходимы и типы, и отношения (без типов нам не о чем говорить, без отношений мы ничего не сможем сказать); ° во-вторых, типы и отношения достаточны так же, как и необходимы, т.е., логически говоря, нам не нужно что-либо еще. Заиечание.

Также можно сделать вывод о том, что типы и отношения — это не одно и та же. К сожалению, в некоторых коммерческих продуктах (нереляционных по определению!) эти два понятия смешиваются. Мы еще вернемся к данному вопросу в главе 25 (раздел 25.2). Кстати, важно понимать, что каждое отношение имеет связанный с ним предикат, включая отношения, полученные с помощью реляционных операторов, например оператора соединения. Отношение ВЕРТ на рис.3.! и три результирующих отношения на рис. 3.2 имеют такие предикаты. ° ВЕРТ.

"Отдел с номером РЕРТ! называется ВМАМЕ и имеет бюджет ВВВВЕТ". ° Выборка строк из ВЕРТ, где ВВРВЕТ > ВМ. "Отдел с номером ВЕРТ$ называется ВМАМЕ и имеет бюджет ВВВВЕТ, который больше восьми миллионов долларов'*. ° Извлечение столбцов РЕРТР и ВУйВЕТ иэ ВЕРТ: "Отдел с номером БЕРТ! имеет какое-то название и бюджет ВВВоЕТ".

° Соединение переменных-отношений ВЕРТ и ЕМР на основе столбца РЕРТ$: "Отдел с номером ВЕРТ(! называется ВНАМЕ и имеет бюджет ВВВВЕТ, а служащий с номером ЕМРВ по фамилии ЕНАМЕ работает в отделе с номером ВЕРТ$ и получает зарплату БА1АЕУ*' (заметим, что этот предикат имеет шесть параметров, а не семь, поскольку две ссылки на ВЕРТ! обозначают один и тот же параметр).

3.5. Оптимизация Как объяснялось в разделе 3.2, реляционные операции, такие как выборка, проекция и соединение, выполняются на уровне множеств. Поэтому реляционные языки часто называют непроцедурными, так как пользователь указывает, чта делать, а не как делать. Фактически пользователь говорит лишь, что ему нужно, без указания процедуры получения результата. Процесс "навигации" по хранимой базе данных с целью удовлетворения запроса пользователя выполняется системой автоматически, а не пользователем вручную. Поэтому реляционные системы иногда называют системами автоматической навигации.

В нереляционных системах за навигацию по базе данных, в основном, несет ответственность сам пользователь. На рис. 3.5 приведена яркая иллюстрация преимуществ автоматической навигации — оператору языка ЯЯ. 1МЯЕВТ противопоставлен код, выполняющий навигацию "вручную*'. Подобный код, возможно, должен написать для получения того же результата пользователь нереляционной системы (в данном случае— сетевой системы СО(>АЗ г'Ь; пример взят из главы по сетевым базам данных в (!.5!).

„Замечание. Здесь используется широкоизвестная база данных деталей и поставщиков. За,Подробностями обратитесь к разделу Зчй 1О1 Глава 3. Введение в реляционные базы данных Несмотря на предыдушие замечания, следует отметить, что "непроцедурный" — это хотя и обшепринятый, но не совсем точный термин, потому что "процедурный" и "непроцедурный" — понятия относительные. Можно лишь с уверенностью сказать, что язык А более (или менее) процедурный, чем язык Б. Поэтому точнее будет сказать, что реляционные языки, такие как ЯОЬ, обладают более высоким уровнем абстракции, чем типичные языки программирования, подобные С++ или СОВОЬ (либо подьязыки данных, обычно принадлежащие нереляционным СУБД; убедитесь в этом сами; см.

рис, 3.5). В принципе, именно более высокий уровень абстракции способствует повышению продуктивности, характерному для реляционных систем. 1НБЕКТ 1НТО БР ( Я$, Р4, ОТ1 ) ЧАОРРЕЯ ( 'Я4', 'РЗ', 1000 ) МОЧЕ 'Б4' 70 Б4 1Н Я РХНР САПС Я КОСЕЕ Я-ЯР-ЮРК ГНОМ Я-ЯР СОККЕНС1 РХЮ РАЯТ ЯР НПН1Н Я-ЯР и)г11е ЯР Йоцпг) РЕКРОКМ АССЕРТ Я-ЯР-АРОК ГКОМ Я-БР СОККЕНСГ Г1НР ПЕНЕК Н1тН1Н Р-ЯР ОЕТ Р 1Г Р4 1Н Р < 'Р3' 1еаче 1оор ЕНР-1Г Г1НР РК10К БР Н1ТН1Н Я-ЯР ЕНР-РЕКГОКМ МОЧЕ 'Р3' ТО Р4 1Н Р Р1НР СА1С Р АССЕРТ Р-ЯР-АРРК РКСМ Р-ЯР СОККЕНС1 Г1НП РАНТ ЯР Н1ТН1Н Р-ЯР ч)з11е ЯР Гоцвг) РЕКГОКИ АССЕРТ Р-БР-АРПИ ГКОИ Р-БР СРККЕНС1 ГХНР ОННЕК Н1ТБ1Н Я-ЯР БЕГ Я 1Г Я4 1Н Б < 'Я4' 1еаче 1оор ЕЮ вЂ” 1Г Г1Ю РК1ОК ЯР Н1ТН1Н Р-БР ЕЮ-РЕКГОКМ МОЧЕ 1000 ТО ЦТГ 1Н ЯР ГХЮ РВ-КЕ1 1Б Я-ЯР-АПРЕ Г1НР РВ-КЕГ 1Б Р-ЯР-АПРЕ БРОНЕ ЯР СОННЕСТ ЯР ТО Б-БР СОННЕСТ ЯР НО Р-БР Рис. 3.5.

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

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

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

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