русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Реляционная модель данных


Дата добавления: 2015-07-04; просмотров: 635; Нарушение авторских прав


 

Начальные сведения о реляционной модели данных были даны в [1]. Здесь

мы рассмотрим некоторые аспекты этой модели более детально.

Основной элемент реляционной модели – таблица (в реляционной терми-

нологии синоним термина «таблица» - отношение). Таблица образуется столб-

цами (атрибутами) и строками (кортежами).

Таблицы могут быть базовыми или виртуальными. Базовые – таблицы,

хранящиеся в БД постоянно. Множество базовых таблиц составляет схему БД.

Виртуальные таблицы возникают как результат действий по манипулированию

данными. Виртуальные таблицы существуют непродолжительное время.

Свойства столбцов:

• Имя столбца уникально в пределах одной таблицы.

Если при манипулировании с данными имена столбцов различных таблиц

совпадают, к имени столбца добавляется префикс из имени таблицы и

точки, например: Студент.Фамилия

• Значения столбца принадлежат только одному домену.

При этом говорят, что таблицы однородны по столбцам.

СУБД должна обеспечивать соблюдение этого свойства, позволяя разме-

щение в столбцах только значений из разрешенного домена.

Свойства строк:

• На пересечении столбца и строки находится только одно значение.

Как уже было сказано, не допускается наличие многозначных атрибутов.

• Строки в таблице должны быть уникальными.

Если некоторые строки полностью совпадают, невозможно идентифици-

ровать одну из них.

• Наличие первичного ключа.

Первичный ключ – столбец или комбинация столбцов, однозначно опре-

деляющих каждую строку таблицы. Наличие первичного ключа гаранти-

рует уникальность строк.

Для виртуальных таблиц требование уникальности строк и наличия пер-

вичных ключей могут не соблюдаться

 

Первичные и внешние ключи. Единственный способ описания связей

между данными в реляционной модели – использование первичных и внешних



ключей. Использование значения первичного ключа некоторой таблицы в каче-

стве внешнего ключа в другой таблице образует связь между соответствующи-

ми строками этих таблиц

Первичный ключ – наименьший (несократимый) набор столбцов таблицы,

способных обеспечить уникальность каждой строки. Первичный ключ не мо-

 


 

жет содержать пустое значение (Null). Чаще первичный ключ состоит из одного

столбца, но не всегда.

Иногда, особенно для составных сущностей, бывает нецелесообразно вво-

дить специальный столбец для образования первичного ключа.

Составной первичный ключ – ключ, состоящий из нескольких столбцов.

Уникальной является комбинация значений всех столбцов ключа. Каждый

столбец ключа сам по себе может не быть уникальным.

Внешний (вторичный) ключ – столбец, значения которого должны совпа-

дать с первичным ключом некоторой таблицы. Иными словами, для внешнего

ключа доменом является множество значений первичного ключа. Внешний

ключ не может принимать значения, не содержащиеся в первичном ключе.

Единственно возможное исключение – значение Null (пусто), при котором

внешний ключ ни на что не ссылается. Поддержание целостности ключей явля-

ется задачей СУБД.

Допустимой является ситуация, когда содержащийся в таблице внешний

ключ ссылается на первичный ключ той же самой таблицы. Пример: запись с

информацией о сотруднике, размещенная в таблице «Сотрудник», имеет атри-

бут «Начальник», ссылающийся на другую запись в той же самой таблице.

Внешний ключ может быть (или не быть) частью составного первичного

ключа в своей таблице.

 

Документирование таблиц. Основные сведения о таблице – название, на-

бор полей и первичный ключ, могут быть задокументированы кратко в тексто-

вой форме:

ИмяТаблицы(Поле1, Поле2, Поле3, Поле4, …).

Имена полей, входящих в первичный ключ таблицы, подчеркивают. Такая

форма описания удобны при анализе структуры таблицы, без учета связей – на-

пример, при проведении нормализации.

 

Переход от инфологической модели к реляционной. Описанные в инфо-

логической модели сущности преобразуются в таблицы, атрибуты сущностей

становятся столбцами этих таблиц.

Домены атрибутов должны быть приведены в соответствие с имеющимися

в СУБД типами данных. Некоторые СУБД позволяют разработчику формиро-

вать собственные домены (типы данных).

Определенные для сущностей уникальные идентификаторы становятся пер-

вичными ключами таблиц.

Связи между таблицами вида «один-ко-многим» (одной записи главной

таблицы может соответствовать несколько записей в связанной) строятся до-

бавлением в связанные таблицы внешних ключей, ссылающихся на первичные

ключи главных таблиц.

Для создания связи «один-к-одному», поле внешнего ключа должно быть

первичным ключом связанной таблицы, либо на него должно быть наложено

условие уникальности значений.

 


Каждая связь вида «многие-ко-многим» должна быть преобразованы в две

связи «один-ко-многим».

 



<== предыдущая лекция | следующая лекция ==>
Определение способа идентификации экземпляров каждой сущ- | Нормализация


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.082 сек.