интернет магазин forekc.ru


    Часть 1     Часть 2     Часть 3     Часть 4   

Введение в системы управления базами данных (часть 1)

Реляционная модель описывает, какие данные могут храниться в реляционных базах данных, а также способы манипулирования такими данными. В упрощенном виде основная идея реляционной модели состоит в том, что данные должны храниться в таблицах и только в таблицах. Эта, кажущаяся тривиальной, идея оказывается вовсе не простой при рассмотрении вопроса, а что, собственно, представляет собой таблица? В данный момент существуем много различных систем обработки данных, оперирующих понятием "таблица", например, всем известные, электронные таблицы, таблицы текстового редактора MS Word, и т.п. Ячейки электронной таблицы могут хранить разнотипные данные, например, числа, строки текста, формулы, ссылающиеся на другие ячейки. Собственно, на одном листе электронной таблицы можно разместить несколько совершенно независимых таблиц, если под таблицей понимать прямоугольную область, расчерченную на клеточки и заполненную данными.

Оглавление
Оглавление ВВЕДЕНИЕ ГЛАВА 1. ЭЛЕМЕНТЫ ТЕОРИИ МНОЖЕСТВ Множества Операции над множествами Декартово произведение множеств Отношение Примеры отношений Бинарные отношения (отношения степени 2) Отноше...
Введение
Введение Основное назначение данного учебного пособия - дать систематическое введение в основы реляционной модели данных и принципы функционирования реляционных баз данных. Реляционная модель опис...
Таблица 1
Таблица 1 ОтделСотрудникиДети сотрудников (интересы) Цех Иванов И.И. Маша ЛЕГО Петя Книги Видео Саша Компьютеры Дима Спорт Петров П.П. Артур Ничем не интересуется Сидоров С.С. Сергей Компьютеры Кн...
Множества
Множества Наиболее простая структура данных, используемая в математике, имеет место в случае, когда между отдельными изолированными данными отсутствуют какие-либо взаимосвязи. Совокупность таких д...
Операции над множествами
Операции над множествами Основными операциями над множествами являются объединение , пересечение и разность ....
Определение 1
Определение 1 . Объединением двух множеств называется новое множество...
Определение 2
Определение 2 . Пересечением двух множеств называется новое множество...
Определение 3
Определение 3 . Разностью двух множеств называется новое множество Если класс объектов, на которых определяются различные множества обозначить ( Универсум ), то дополнением множества называют разн...
Декартово произведение множеств
Декартово произведение множеств Одним из способов конструирования новых объектов из уже имеющихся множеств является декартово произведение множеств . Пусть и - множества. Выражение вида , где и ,...
Определение 4
Определение 4 . Декартовым (прямым) произведением множеств называется множество упорядоченных n-ок (наборов, кортежей) вида...
Определение 5
Определение 5 . Степенью декартового произведения называется число множеств n, входящих в это декартово произведение. Замечание . Если все множества одинаковы, то используют обозначение ....
Определение 6
Определение 6 . Подмножество декартового произведения множеств называется отношением степени n ( n-арным отношением )....
Определение 7
Определение 7 . Мощность множества кортежей, входящих в отношение , называют мощностью отношения . Замечание . Понятие отношения является очень важным не только с математической точки зрения. Поня...
Примеры отношений бинарные отношения (отношения степени 2)
Бинарные отношения (отношения степени 2) В математике большую роль играют бинарные отношения, т.е. отношения, заданные на декартовом произведении двух множеств ....
Определение 8
Определение 8 . Отношение на множестве называется отношением эквивалентности , если оно обладает следующими свойствами: для всех (рефлексивность) Если , то (симметричность) Если и , то (транзитивн...
Пример 1
Пример 1 . Рассмотрим на множестве вещественных чисел отношение, заданное просто равенством чисел. Предикат такого отношения: , или просто Условия 1-3, очевидно, выполняются, поэтому данное отноше...
Пример 2
Пример 2 . Рассмотрим более сложное отношение эквивалентности. На множестве целых чисел зададим отношение "равенство по модулю n" следующим образом: два числа и равны по модулю n , если их остатки...
Определение 9
Определение 9 . Отношение на множестве называется отношением порядка , если оно обладает следующими свойствами: для всех (рефлексивность) Если и , то (антисимметричность) Если и , то (...
Пример 3
Пример 3 . Простым примером отношения порядка является отношение, задаваемое обычным неравенством на множестве вещественных чисел . Заметим, что для любых чисел и выполняется либо , либо , т.е. лю...
Пример 4
Пример 4 . Рассмотрим на множестве всех сотрудников некоторого предприятия отношение, задаваемое следующим образом: сотрудник предшествует сотруднику тогда и только тогда, когда выполняется одно и...
Определение 10
Определение 10 . Отношение на декартовом произведении двух множеств называется функциональным отношением , если оно обладает следующим свойством: Если и , то (однозначность функции). Обычно, функц...
Пример 5
Пример 5 . Пусть множество есть следующее множество молодых людей: {Вовочка, Петя, Маша, Лена}, причем известны следующие факты: Вовочка любит Вовочку (эгоист). Петя любит Машу (взаимно). Маша люб...
Таблица 1
Таблица 1 Кого Кто Вовочка Петя Маша Лена Вовочка Любит Петя Любит Маша Любит Любит Лена Любит Таблица 1. Матрица взаимоотношений Способ 4. При помощи таблицы фактов:...
Таблица 2
Таблица 2 Кто любит Кого любят Вовочка Вовочка Петя Маша Маша Петя Маша Маша Лена Петя Таблица 2 Таблица фактов С точки зрения реляционных баз данных наиболее предпочтительным является четвертый с...
N-арные отношения (отношения степени n)
n-арные отношения (отношения степени n) В математике n-арные отношения рассматриваются относительно редко, в отличие от баз данных, где наиболее важными являются именно отношения, заданные на дека...
Пример 6
Пример 6 . В некотором университете на математическом факультете учатся студенты Иванов, Петров и Сидоров. Лекции им читают преподаватели Пушников, Цыганов и Шарипов, причем известны следующие фак...
Таблица 3
Таблица 3 A (Преподаватель) B (Предмет) Q (Количество часов) Пушников Алгебра 40 Пушников Базы данных 80 Цыганов Геометрия 50 Шарипов Алгебра 40 Шарипов Геометрия 50 Таблица 3 Отношение "Читает ле...
Таблица 4
Таблица 4 C (студент) B (предмет) A (Преподаватель) Иванов Алгебра Шарипов Иванов Базы данных Пушников Петров Алгебра Пушников Петров Геометрия Цыганов Сидоров Геометрия Цыганов Сидоров Базы данны...
Транзитивное замыкание отношений
Транзитивное замыкание отношений Введем понятие транзитивного замыкания , связанное с бинарными отношениями, которое понадобится в дальнейшем....
Определение 11.
Определение 11. Пусть отношение задано на декартовом квадрате некоторого множества . Транзитивным замыканием отношения называется новое отношение , состоящее из кортежей , для которых выполняется:...
Пример 7
Пример 7 . Пусть множество представляет собой следующее множество деталей и конструкций: = {Болт, Гайка, Двигатель, Автомобиль, Колесо, Ось} причем некоторые из деталей и конструкций могут использ...
Таблица 5
Таблица 5 Конструкция Где используется Болт Двигатель Болт Колесо Гайка Двигатель Гайка Колесо Двигатель Автомобиль Колесо Автомобиль Ось Колесо Таблица 5 Отношение R Транзитивное замыкание состои...
Таблица 6
Таблица 6 Конструкция Где используется Болт Двигатель Болт Колесо Гайка Двигатель Гайка Колесо Двигатель Автомобиль Колесо Автомобиль Ось Колесо Болт Автомобиль Гайка Автомобиль Ось Автомобиль...
Выводы
Выводы Множество - это неопределяемое понятие, представляющее некоторую совокупность данных. Элементы множества можно отличать друг от друга, а также определять, принадлежит ли данный элемент данн...
Общая характеристика реляционной модели данных
Общая характеристика реляционной модели данных Основы реляционной модели данных были впервые изложены в статье Е.Кодда [43] в 1970 г. Эта работа послужила стимулом для большого количества статей и...
Типы данных
Типы данных Любые данные, используемые в программировании, имеют свои типы данных. Важно! Реляционная модель требует, чтобы типы используемых данных были простыми . Для уточнения этого утверждения...
Простые типы данных
Простые типы данных Простые, или атомарные, типы данных не обладают внутренней структурой. Данные такого типа называют скалярами . К простым типам данных относятся следующие типы: Логический. Стро...
Структурированные типы данных
Структурированные типы данных Структурированные типы данных предназначены для задания сложных структур данных. Структурированные типы данных конструируются из составляющих элементов, называемых ко...
Ссылочные типы данных
Ссылочные типы данных Ссылочный тип данных ( указатели ) предназначен для обеспечения возможности указания на другие данные. Указатели характерны для языков процедурного типа, в которых есть понят...
Типы данных, используемые в реляционной модели
Типы данных, используемые в реляционной модели Собственно, для реляционной модели данных тип используемых данных не важен. Требование, чтобы тип данных был простым , нужно понимать так, что в реля...
Домены
Домены В реляционной модели данных с понятием тип данных тесно связано понятие домена, которое можно считать уточнением типа данных. Домен - это семантическое понятие. Домен можно рассматривать ка...
Определения и примеры
Определения и примеры Фундаментальным понятием реляционной модели данных является понятие отношения . В определении понятия отношения будем следовать книге К. Дейта [11]....
Определение 1.
Определение 1. Атрибут отношения есть пара вида Имя_атрибута : Имя_домена. Имена атрибутов должны быть уникальны в пределах отношения. Часто имена атрибутов отношения совпадают с именами соответст...
Определение 2
Определение 2 . Отношение , определенное на множестве доменов (не обязательно различных), содержит две части: заголовок и тело. Заголовок отношения содержит фиксированное количество атрибутов отно...
Пример 1
Пример 1 . Рассмотрим отношение "Сотрудники" заданное на доменах "Номер_сотрудника", "Фамилия", "Зарплата", "Номер_отдела". Т.к. все домены различны, то имена атрибутов отношения удобно назвать та...
Таблица 1
Таблица 1 Номер_сотрудника Фамилия Зарплата Номер_отдела 1 Иванов 1000 1 2 Петров 2000 2 3 Сидоров 3000 1 Таблица 1 Отношение "Сотрудники"...
Определение 3
Определение 3 . Реляционной базой данных называется набор отношений....
Определение 4
Определение 4 . Схемой реляционной базы данных называется набор заголовков отношений, входящих в базу данных. Хотя любое отношение можно изобразить в виде таблицы, нужно четко понимать, что отноше...
Таблица 2
Таблица 2 Реляционный термин Соответствующий "табличный" термин База данных Набор таблиц Схема базы данных Набор заголовков таблиц Отношение Таблица Заголовок отношения Заголовок таблицы Тело отно...
Свойства отношений
Свойства отношений Свойства отношений непосредственно следуют из приведенного выше определения отношения. В этих свойствах в основном и состоят различия между отношениями и таблицами. В отношении...
Первая нормальная форма
Первая нормальная форма Труднее всего дать определение вещей, которые всем понятны. Если давать не строгое, описательное определение, то всегда остается возможность неправильной его трактовки. Есл...
Выводы
Выводы Реляционная модель данных состоит из трех частей: Структурной части. Целостной части. Манипуляционной части. В классической реляционной модели используются только простые (атомарные) типы д...
Глава 3. Целостность реляционных данных
Глава 3. Целостность реляционных данных Во второй части реляционной модели данных определяются два ограничения, которые должны выполняться в любой реляционной базе данных. Это: Целостность сущност...
Null-значения
Null-значения Основное назначение баз данных состоит в том, чтобы хранить и предоставлять информацию о реальном мире. Для представления этой информации в базе данных используются привычные для про...
Трехзначная логика (3vl)
Трехзначная логика (3VL) Т.к. null-значение обозначает на самом деле тот факт, что значение неизвестно, то любые алгебраические операции (сложение, умножение, конкатенация строк и т.д.) должны дав...
Таблица 1
Таблица 1 AND F T U F F F F T F T U U F U U Таблица 1 Таблица истинности AND...
Таблица 2
Таблица 2 OR F T U F F T U T T T T U U T U Таблица 2 Таблица истинности OR...
Таблица 3
Таблица 3 NOT F T T F U U Таблица 3 Таблица истинности NOT Имеется несколько парадоксальных следствий применения трехзначной логики. Парадокс 1. Null-значение не равно самому себе. Действительно,...
Потенциальные ключи
Потенциальные ключи По определению, тело отношения есть множество кортежей, поэтому отношения не могут содержать одинаковые кортежи. Это значит, что каждый кортеж должен обладать свойством уникаль...
Определение 1
Определение 1 . Пусть дано отношение . Подмножество атрибутов отношения будем называть потенциальным ключом , если обладает следующими свойствами: Свойством уникальности - в отношении не может быт...
Таблица 4
Таблица 4 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Таблица 4 Отношение "Сотрудники" При первом взгляде на таблицу, изображающую это отношение, может показаться,...
Таблица 5
Таблица 5 A B C 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Предъявим кому-нибудь эту таблицу и не сообщим смысл наименований атрибутов. Очевидно, что невозможно судить, не понимая смысла данных, м...
Целостность сущностей
Целостность сущностей Т.к. потенциальные ключи фактически служат идентификаторами объектов предметной области (т.е. предназначены для различения объектов), то значения этих идентификаторов не могу...
Внешние ключи
Внешние ключи Различные объекты предметной области, информация о которых хранится в базе данных, всегда взаимосвязаны друг с другом. Например, накладная на поставку товара содержит список товаров...
Таблица 6
Таблица 6 Номер поставщика Наименование поставщика Номер детали Наименование детали Поставляемое количество 1 Иванов 1 Болт 100 1 Иванов 2 Гайка 200 1 Иванов 3 Винт 300 2 Петров 1 Болт 150 2 Петро...
Таблица 7
Таблица 7 Номер поставщика Наименование поставщика 1 Иванов 2 Петров 3 Сидоров Таблица 6 Отношение "Поставщики"...
Таблица 8
Таблица 8 Номер детали Наименование детали 1 Болт 2 Гайка 3 Винт Таблица 7 Отношение "Детали"...
Таблица 9
Таблица 9 Номер поставщика Номер детали Поставляемое количество 1 1 100 1 2 200 1 3 300 2 1 150 2 2 250 3 3 1000 Таблица 8 Отношение "Поставки" В отношении "Поставки" атрибуты "Номер поставщика" и...
Определение 2
Определение 2 . Пусть дано отношение . Подмножество атрибутов отношения будем называть внешним ключом , если: Существует отношение ( и не обязательно различны) с потенциальным ключом . Каждое знач...
Целостность внешних ключей
Целостность внешних ключей Т.к. внешние ключи фактически служат ссылками на кортежи в другом (или в том же самом) отношении, то эти ссылки не должны указывать на несуществующие объекты. Это опреде...
Замечания к правилам целостности сущностей и внешних ключей
Замечания к правилам целостности сущностей и внешних ключей На самом деле приведенные правила целостности сущностей и внешних ключей прямо следуют из определений понятий "потенциальный ключ" и "вн...
Операции, могущие нарушить ссылочную целостность
Операции, могущие нарушить ссылочную целостность Ссылочная целостность может нарушиться в результате операций, изменяющих состояние базы данных. Таких операций три - вставка, обновление и удаление...
Для родительского отношения
Для родительского отношения Вставка кортежа в родительском отношении . При вставке кортежа в родительское отношение возникает новое значение потенциального ключа. Т.к. допустимо существование корт...
Для дочернего отношения
Для дочернего отношения Вставка кортежа в дочернее отношение . Нельзя вставить кортеж в дочернее отношение, если вставляемое значение внешнего ключа некорректно. Вставка кортежа в дочернее отношен...
Стратегии поддержания ссылочной целостности
Стратегии поддержания ссылочной целостности Существуют две основные стратегии поддержания ссылочной целостности : RESTRICT (ОГРАНИЧИТЬ) - не разрешать выполнение операции, приводящей к нарушению с...
Применение стратегий поддержания ссылочной целостности
Применение стратегий поддержания ссылочной целостности Рассмотрим, как применяются стратегии поддержания ссылочной целостности при выполнении операций модификации базы данных....
При обновлении кортежа в родительском отношении
При обновлении кортежа в родительском отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать обновление, если имеется хотя бы один кортеж в дочернем отношении, ссылающийся на обновля...
При удалении кортежа в родительском отношении
При удалении кортежа в родительском отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать удаление, если имеется хотя бы один кортеж в дочернем отношении, ссылающийся на удаляемый к...
При вставке кортежа в дочернее отношение
При вставке кортежа в дочернее отношение Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать вставку, если внешний ключ во вставляемом кортеже не соответствует ни одному значению потенциаль...
При обновлении кортежа в дочернем отношении
При обновлении кортежа в дочернем отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать обновление, если внешний ключ в обновляемом кортеже становится не соответствующим ни одному з...
Выводы
Выводы Современные СУБД допускают использование null-значений , т.к. данные часто бывают неполными или неизвестными. Споры о допустимости использования null-значений ведутся до сих пор. Использова...
Обзор реляционной алгебры
Обзор реляционной алгебры Третья часть реляционной модели, манипуляционная часть, утверждает, что доступ к реляционным данным осуществляется при помощи реляционной алгебры или эквивалентного ему р...
Замкнутость реляционной алгебры
Замкнутость реляционной алгебры Реляционная алгебра представляет собой набор операторов, использующих отношения в качестве аргументов, и возвращающие отношения в качестве результата. Таким образом...
Отношения, совместимые по типу
Отношения, совместимые по типу Некоторые реляционные операторы (например, объединение) требуют, чтобы отношения имели одинаковые заголовки. Действительно, отношения состоят из заголовка и тела. Оп...
Определение 1
Определение 1 . Будем называть отношения совместимыми по типу , если они имеют идентичные заголовки, а именно, Отношения имеют одно и то же множество имен атрибутов , т.е. для любого атрибута в од...
Оператор переименования атрибутов
Оператор переименования атрибутов Оператор переименования атрибутов имеет следующий синтаксис: где - отношение, - исходные имена атрибутов, - новые имена атрибутов. В результате применения операто...
Пример 1
Пример 1 . Следующий оператор возвращает неименованное отношение, в котором атрибут переименован в :...
Определение 2
Определение 2 . Объединением двух совместимых по типу отношений и называется отношение с тем же заголовком, что и у отношений и , и телом, состоящим из кортежей, принадлежащих или , или , или обои...
Пример 2
Пример 2 . Пусть даны два отношения и с информацией о сотрудниках:...
Таблица 1
Таблица 1 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Таблица 1 Отношение A...
Таблица 2
Таблица 2 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Пушников 2500 4 Сидоров 3000 Таблица 2 Отношение B Объединение отношений и будет иметь вид:...
Таблица 3
Таблица 3 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 2 Пушников 2500 4 Сидоров 3000 Таблица 3 Отношение A UNION B Замечание . Как видно из приведенного примера, по...
Пример 3
Пример 3 . Для тех же отношений и , что и в предыдущем примере пересечение имеет вид:...
Таблица 4
Таблица 4 Табельный номер Фамилия Зарплата 1 Иванов 1000 Таблица 4 Отношение A INTERSECT B Замечание . Казалось бы, что в отличие от операции объединения, потенциальные ключи могли бы наследоватьс...
Определение 4
Определение 4 . Вычитанием двух совместимых по типу отношений и называется отношение с тем же заголовком, что и у отношений и , и телом, состоящим из кортежей, принадлежащих отношению и не принадл...
Пример 4
Пример 4 . Для тех же отношений и , что и в предыдущем примере вычитание имеет вид:...
Таблица 5
Таблица 5 Табельный номер Фамилия Зарплата 2 Петров 2000 3 Сидоров 3000 Таблица 5 Отношение A MINUS B...
Определение 5
Определение 5 . Декартовым произведением двух отношений и называется отношение, заголовок которого является сцеплением заголовков отношений и : , а тело состоит из кортежей, являющихся сцеплением...
Пример 5
Пример 5 . Пусть даны два отношения и с информацией о поставщиках и деталях:...
Таблица 6
Таблица 6 Номер поставщика Наименование поставщика 1 Иванов 2 Петров 3 Сидоров Таблица 6 Отношение A (Поставщики)...
Таблица 7
Таблица 7 Номер детали Наименование детали 1 Болт 2 Гайка 3 Винт Таблица 7 Отношение B (Детали) Декартово произведение отношений и будет иметь вид:...
Таблица 8
Таблица 8 Номер поставщика Наименование поставщика Номер детали Наименование детали 1 Иванов 1 Болт 1 Иванов 2 Гайка 1 Иванов 3 Винт 2 Петров 1 Болт 2 Петров 2 Гайка 2 Петров 3 Винт Определение 6
Определение 6 . Выборкой (ограничением, селекцией) на отношении с условием называется отношение с тем же заголовком, что и у отношения , и телом, состоящем из кортежей, значения атрибутов которых...
Пример 6
Пример 6 . Пусть дано отношение с информацией о сотрудниках:...
Таблица 9
Таблица 9 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Таблица 9 Отношение A Результат выборки будет иметь вид:...
Таблица 10
Таблица 10 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 Таблица 10 Отношение A WHERE Зарплата3000 Смысл операции выборки очевиден - выбрать кортежи отношения, удовлетворяющие некот...
Определение 7
Определение 7 . Проекцией отношения по атрибутам , где каждый из атрибутов принадлежит отношению , называется отношение с заголовком и телом, содержащим множество кортежей вида , таких, для которы...
Пример 7
Пример 7 . Пусть дано отношение с информацией о поставщиках, включающих наименование и месторасположение:...
Таблица 11
Таблица 11 Номер поставщика Наименование поставщика Город поставщика 1 Иванов Уфа 2 Петров Москва 3 Сидоров Москва 4 Сидоров Челябинск Таблица 11 Отношение A (Поставщики) Проекция будет иметь вид:...
Таблица 12
Таблица 12 Город поставщика Уфа Москва Челябинск Таблица 12 Отношение A[Город поставщика]...
Соединение
Соединение Операция соединения отношений, наряду с операциями выборки и проекции, является одной из наиболее важных реляционных операций. Обычно рассматривается несколько разновидностей операции с...
Определение 8
Определение 8 . Соединением отношений и по условию называется отношение представляет собой логическое выражение, в которое могут входить атрибуты отношений и и (или) скалярные выражения. Таким обр...
Определение 9
Определение 9 . Пусть отношение содержит атрибут , отношение содержит атрибут , а - один из операторов сравнения ( и т.д.). Тогда - соединением отношения по атрибуту с отношением по атрибуту Пример 8
Пример 8 . Рассмотрим некоторую компанию, в которой хранятся данные о поставщиках и поставляемых деталях. Пусть поставщикам и деталям присвоен некий статус. Пусть бизнес компании организован таким...
Таблица 13
Таблица 13 Номер поставщика Наименование поставщика X (Статус поставщика) 1 Иванов 4 2 Петров 1 3 Сидоров 2 Таблица 13 Отношение A (Поставщики)...
Таблица 14
Таблица 14 Номер детали Наименование детали Y (Статус детали) 1 Болт 3 2 Гайка 2 3 Винт 1 Таблица 14 Отношение B (Детали) Ответ на вопрос "какие поставщики имеют право поставлять какие детали?" да...
Таблица 15
Таблица 15 Номер поставщика Наименование поставщика X (Статус поставщика) Номер детали Наименование детали Y (Статус детали) 1 Иванов 4 1 Болт 3 1 Иванов 4 2 Гайка 2 1 Иванов 4 3 Винт 1 2 Петров 1...
Экви-соединение
Экви-соединение Наиболее важным частным случаем -соединения является случай, когда есть просто равенство. Синтаксис экви-соединения :...
Пример 9
Пример 9 . Пусть имеются отношения , и , хранящие информацию о поставщиках, деталях и поставках соответственно (для удобства введем краткие наименования атрибутов):...
Таблица 16
Таблица 16 Номер поставщика PNUM Наименование поставщика PNAME 1 Иванов 2 Петров 3 Сидоров Таблица 16 Отношение P (Поставщики)...
Таблица 17
Таблица 17 Номер детали DNUM Наименование детали DNAME 1 Болт 2 Гайка 3 Винт Таблица 17 Отношение D (Детали)...
Таблица 18
Таблица 18 Номер поставщика PNUM Номер детали DNUM Поставляемое количество VOLUME 1 1 100 1 2 200 1 3 300 2 1 150 2 2 250 3 1 1000 Таблица 18 Отноше...
Таблица 19
Таблица 19 Номер поставщика PNUM1 Наименование поставщика PNAME Номер поставщика PNUM2 Номер детали DNUM Поставляемое количество VOLUME 1 Иванов 1 1 100 1 Иванов 1 2 200 1 Иванов 1 3 300 2 Петров...
Определение 10
Определение 10 . Пусть даны отношения и , имеющие одинаковые атрибуты (т.е. атрибуты с одинаковыми именами и определенные на одинаковых доменах). Тогда естественным соединением отношений и называе...
Пример 10
Пример 10 . В предыдущем примере ответ на вопрос "какие детали поставляются поставщиками", более просто записывается в виде естественного соединения трех отношений (для удобства просмотра порядок...
Таблица 20
Таблица 20 Номер поставщика PNUM Наименование поставщика PNAME Номер детали DNUM Наименование детали DNAME Поставляемое количество VOLUME 1 Иванов 1 Болт 100 1 Иванов 2 Гайка 200 1 Иванов 3 Винт 3...
Определение 11
Определение 11 . Пусть даны отношения и , причем атрибуты - общие для двух отношений. Делением отношений на называется отношение с заголовком и телом, содержащим множество кортежей , таких, что дл...
Пример 11
Пример 11 . В примере с поставщиками, деталями и поставками ответим на вопрос, "какие поставщики поставляют все детали?". В качестве делимого возьмем проекцию , содержащую номера поставщиков и ном...
Таблица 21
Таблица 21 Номер поставщика PNUM Номер детали DNUM 1 1 1 2 1 3 2 1 2 2 3 1 Таблица 21 Проекция X=PD[PNUM,DNUM] В качестве делителя возьмем проекцию , содержащую список номеров всех деталей (не обя...
Таблица 22
Таблица 22 Номер детали DNUM 1 2 3 Таблица 22 Проекция Y=D[DNUM] Деление дает список номеров поставщиков, поставляющих все детали:...
Таблица 23
Таблица 23 Номер поставщика PNUM 1 Таблица 23 Отношение X DEVIDEBY Y Оказалось, что только поставщик с номером 1 поставляет все детали....
Примеры использования реляционных операторов пример 12
. Получить имена поставщиков, поставляющих деталь номер 2. Решение:...
Пример 13
Пример 13 . Получить имена поставщиков, поставляющих по крайней мере одну гайку. Решение: Ответ на этот запрос можно получить и иначе:...
Пример 14
Пример 14 . Получить имена поставщиков, поставляющих все детали. Решение:...
Пример 15
Пример 15 . Получить имена поставщиков, не поставляющих деталь номер 2. Решение: Ответ на этот запрос можно получить и пошагово: - получить список номеров всех поставщиков - соединить данные о пос...
Зависимые реляционные операторы
Зависимые реляционные операторы Как было сказано в начале главы, не все операторы реляционной алгебры являются независимыми - некоторые из них выражаются через другие реляционные операторы....
Оператор соединения
Оператор соединения Оператор соединения определяется через операторы декартового произведения и выборки. Для оператора естественного соединения добавляется оператор проекции....
Оператор пересечения
Оператор пересечения Оператор пересечения выражается через вычитание следующим образом:...
Оператор деления
Оператор деления Оператор деления выражается через операторы вычитания, декартового произведения и проекции следующим образом: Таким образом показано, что операторы соединения , пересечения и деле...
Примитивные реляционные операторы
Примитивные реляционные операторы Оставшиеся реляционные операторы ( объединение , вычитание , декартово произведение , выборка , проекция ) являются примитивными операторами - их нельзя выразить...
Оператор декартового произведения
Оператор декартового произведения Оператор декартового произведения - это единственный оператор, увеличивающий количество атрибутов , поэтому его нельзя выразить через объединение, вычитание, выбо...
Оператор проекции
Оператор проекции Оператор проекции - единственный оператор, уменьшающий количество атрибутов, поэтому его нельзя выразить через объединение, вычитание, декартово произведение, выборку....
Оператор выборки
Оператор выборки Оператор выборки - единственный оператор, позволяющий проводить сравнения по атрибутам отношения, поэтому его нельзя выразить через объединение, вычитание, декартово произведение,...
Операторы объединения и вычитания
Операторы объединения и вычитания Доказательство примитивности операторов объединения и вычитания более сложны и мы их здесь не приводим....
Запросы, невыразимые средствами реляционной алгебры
Запросы, невыразимые средствами реляционной алгебры Несмотря на мощь языка реляционной алгебры, имеется ряд типов запросов, которые принципиально нельзя выразить только при помощи операторов реляц...
Плохая нормализация отношений
Плохая нормализация отношений Данный пример взят из книги Гилуа М.М. [6, стр.43]....
Пример 16
Пример 16 . Пусть имеется отношение ХИМИЧЕСКИЙ_СОСТАВ_ВЕЩЕСТВ с набором атрибутов (Наименование вещества, Водород, Гелий, …, 105_элемент). Значением атрибута "Вещество" являются наименования химич...
Таблица 24
Таблица 24 Наименование вещества Водород Гелий … 105 элемент Дезоксирибону-клеиновая кислота 5 3 … 0.01 Бензин 50 0 … 0 … … … … … Таблица 24 Отношение ХИМИЧЕСКИЙ_СОСТАВ_ВЕЩЕСТВ Рассмотрим запрос "...
Таблица 25
Таблица 25 НОМ_ВЕЩЕСТВА ВЕЩЕСТВО 1 Дезоксирибонуклеиновая кислота 2 Бензин Таблица 25 Отношение ВЕЩЕСТВО...
Таблица 26
Таблица 26 НОМ_ЭЛЕМЕНТА ЭЛЕМЕНТ 1 Водород 2 Гелий … … 105 … Таблица 26 Отношение ЭЛЕМЕНТЫ... Статьи

Мир InterBase

Перед тем как начать разрабатывать приложения баз данных с помощью InterBase, необходимо позаботиться о его установке. Обычно InterBase устанавливают как на сервер, так и на рабочую станцию программиста, разрабатывающего приложение. Разработчику InterBase нужен для внутренних экспериментов и отладки рабочих версий базы данных и программ, a InterBase на сервере используется для тестирования программы пользователями или совместной разработки в случае, если над проектом работает команда. Благодаря своей легковесности и нетребовательности к ресурсам InterBase можно спокойно устанавливать прямо на рабочие станции разработчиков, не беспокоясь о снижении быстродействия. Когда InterBase не обслуживает подключений к базам данных, находясь в ожидании запросов, то занимает памяти меньше, чем такие популярные программы, как ICQ или WinAmp.

Установка InterBase на платформе Linux/Unix
Разработка приложений баз данных InterBase на Borland Delphi/C++
Разработка приложений баз данных
Администрирование и архитектура InterBase
Логическая структура базы данных InterBase
Обзор современных версий семейства InterBase
Приложения

*