КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Отношения и переменные-отношения
Термин «relation» (отношение) - это математическое название таблицы. Тогда можно сказать, что база данных отделов и служащих, представленная на рис. 2.1 содержит два отношения. На практике, неформально термины «таблица» и «отношение» используются как синонимы. Введение нового понятия было необходимо основателю реляционной модели данных Е.Ф. Кодду для того, чтобы отделить свою теорию и ее термины от тех неформально используемых терминов, которые были в то время (конец 1960-х годов) часто используемыми специалистами из различных областей знаний и вкладывавших в них несколько различное содержание. Кодд ввел свой словарь терминов и на его основе построил математизированную модель данных – реляционную модель данных. В связи с указанным обстоятельством, таблицы «Отделы» и «Служащие» фактически являются переменными отношений (relation variable), т.е. их значения – это значения отношений. Пример 2.2. Предположим, что таблица «Служащие» в данный момент имеет значение (значение отношения), которое представлено на рис. 2.1 и далее предположим, что мы удалили строку о сотруднике с фамилией «Буденко» (его номер «С4»): DELETE Служащие WHERE НомСлужащего=«С4». Результат выполнения этой операции представлен на рис. 2.3.
Рис. 2.3 Переменная-отношение «Служащие» после удаления строки сотрудника с кодом «С4» Концептуально это можно описать следующим образом: Старое значение отношения Служащие было заменено в целом совершенно другим, новым значением отношения. Т.е. приведенная операция удаления строки, по сути, - это просто другой, упрощенный способ записи операции реляционного присвоения: Служащие:= Служащие MINUS (Служащие WHERE НомСлужащего=«С4») Ключевое слово MINUS используется для описания оператора реляционной разности. Соответственно INSERT и UPDATE являются также иными формами записи соответствующих операций реляционного присвоения. Каждый столбец в отношении связан с типом данных. Кроме того реляционная модель имеет неограниченный набор типов, т.е. это означает, что пользователи могут определять собственные типы. Рассмотрим важный, хотя и не столь распространенный, способ представления смысла отношений: § Во-первых, данное отношение r и заголовок отношения r представляют определенный предикат или логическую функцию. § Во-вторых, каждая строка в теле отношения r представляет собой определенное истинное высказывание, полученное из предиката путем подстановки определенных значений аргументов соответствующего типа вместо местодержателей или параметров этого предиката. Например, в случае, показанном на рис. 2.1, предикат будет следующим: Служащий с номером НомСлужащего по фамилии ИмяСлужащего работает в отделе с номером НомОтдела и получает зарплату Зарплата. Здесь параметрами являются НомСлужащего, ИмяСлужащего, НомОтдела и Зарплата, которые соответствуют 4-м столбцам переменной-отношения Служащие. Примером соответствующего истинного высказывания может быть: Служащий с номером ‘C1’ по фамилии ‘Иванов’ работает в отделе с номером ‘Отд1’ и получает зарплату ’21 тыс. ден. ед.’. Иначе можно сказать, что: § типы- объекты (множества объектов), которые можно обсуждать; § отношения – факты (множества фактов), касающиеся объектов, которые можно обсуждать. Важно понимать, что каждое отношение имеет связанный с ним предикат, включая отношения, полученные с помощью реляционных операторов, например оператора соединения. Пример 2.3. Отношение «Отделы», представленное на рис. 2.1 и три результирующих отношения, представленные на рис. 2.2, имеют следующие предикаты: § «Отделы»: «Отдел с номером НомОтдела называется НазваниеОтд и имеет бюджет Бюджет». § Выборка строк из «Отделы», где Бюджет > 8M: «Отдел с номером НомОтдела называется НазваниеОтд и имеет бюджет Бюджет, который больше 8 миллионов денежных единиц». § Извлечение столбцов НомОтдела и Бюджет из «Отделы»: «Отдел с номером НомОтдела имеет какое-то название и бюджет Бюджет». § Соединение переменных-отношений «Отделы» и «Служащие» на основе столбца НомОтдела: «Отдел с номером НомОтдела называется НазваниеОтд и имеет бюджет Бюджет, а служащий с номером НомСлужащего по фамилии ИмяСлужащего работает в отделе с номером НомОтдела и получает зарплату Зарплата». Таким образом, можно дать следующее определение: Реляционная БД – это такая БД, которая воспринимается ее пользователями как множество переменных, значениями которых являются отношения.
Дата добавления: 2014-01-13; Просмотров: 1839; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |