- •1.1. Архитектура хост/терминал
- •1.2. Архитектура файл/серввр
- •2.1 Сетевая модель данных
- •2.2. Реляционная модель данных
- •4.2. Первичные ключи. Что выбрать в качестве первичных ключей для каждой из таблиц?
- •4.3. Нормализация данных
- •4.4. Типы данных
- •5.1. Предназначение IDEF1X
- •5.2. Сущности в IDEF1X и их атрибуты
- •5.3. Связи между сущностями
- •5.4. Идентификация сущностей. Представление о ключах
- •5.5.Классификация сущностей в IDEF1X. Зависимые и независимые сущности
- •5.7. Преимущества IDEF1X
- •6.2. Оператор SELECT
- •6.3. Работа с несколькими таблицами
- •6.5. Объединение множества запросов в один
- •6.6.Команды модификации данных
- •6.7. Модификация структуры данных
- •ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ СИСТЕМ УПРАВЛЕНИЯ
Значение типа |
Интерпретация |
|
datetime |
2 апреля 1999 года |
11 часов 21 минута после по |
02.04.99 11:21 |
||
|
лудня |
|
7. декабря. 00 |
7 декабря 2000 года |
11 часов 21 минута 15 се |
11:21:15:871 |
кунд и 871 тысячная секунды после полудня |
|
11:21:15:8 |
11 часов 21 минута 15 секунд и 8 десятых секун |
|
|
ды после полудня |
|
4.4.5. Специальные типы данных:
• Тип currency. Позволяет хранить значения денежных единиц. Данные типа currency хранятся в виде целой и дробной частей. Некоторые ин струменты, специально предназначенные для представления денежных значений, отображают значения типа currency округленными до ближай шей сотой доли.
• Тип blob. Предназначен (только\) для хранения больших массивов данных в произвольном формате (рисунки, видео и т.д.). Поскольку тип не структурированный, то он не может быть использован в поиске и в за просе.
5.Основы методологии IDEF1X
5.1.Предназначение IDEF1X
IDEF1X является методом для разработки реляционных баз данных и использует условный синтаксис, специально разработанный для удобного построения концептуальной схемы. Концептуальной схемой мы называем универсальное представление структуры данных, независимое от конейной реализации базы данных и аппаратной платформы.
5.2. Сущности в IDEF1X и их атрибуты
Сущность в IDEF1X описывает собой совокупность или набор экзем пляров, похожих по свойствам, но однозначно отличаемых друг от друга по одному или нескольким признакам. Каждый экземпляр является реали зацией сущности. Таким образом, сущность в IDEF1X описывает конкрет ный набор экземпляров реального мира. Примером сущности IDEF lX мо жет быть сущность СОТРУДНИК, которая представляет собой всех со трудников предприятия, а один из них, скажем, Иванов Петр Сергеевич, является конкретной реализацией этой сущности. В примере, приведенном на рис. 6, каждый экземпляр сущности СОТРУДНИК содержит следую щую информацию: ID сотрудника, имя сотрудника, адрес сотрудника и;
т.п. В IDEF1X модели эти свойства называются атрибутами сущности. Каждый атрибут содержит только часть информации о сущности.
5.3. Связи между сущностями
Связи в IDEF1X представляют собой ссылки, соединения и ассоциа ции между сущностями. Связи - это глаголы, которые показывают, как со относятся сущности между собой.
Во всех перечисленных примерах взаимосвязи между сущностями со ответствуют схеме один ко многим (рис. 6). Это означает, что один эк земпляр первой сущности связан с несколькими экземплярами второй сущности. Причем первая сущность называется родительской, а вторая - дочерней. В приведенных примерах глаголы заключены в угловые скобки. Связи отображаются в виде линии между двумя сущностями с точкой на одном конце и глагольной фразой, отображаемой над линией. На рис. 6 приводится диаграмма связи между СОТРУДНИКОМ и ОТДЕЛОМ.
Отдел <состоит из> нескольких Сотрудников.
Самолет <перевозит> нескольких Пассажиров.
Сотрудник <пишет> разные Отчеты.
ИМ Я СУЩ НО СТИ
Рис. 6. Пример связи между сущностями
Отношения многие ко многим обычно используются на начальной стадии разработки диаграммы, например в диаграмме зависимости сущно стей, и отображаются в IDEF1X в виде сплошной линии с точками на обо их концах. Так как отношения многие ко многим могут скрыть другие бизнес-правила или ограничения, они должны быть полностью исследова
ны на одном из этапов моделирования. Например, иногда отношение мно гие ко многим на ранних стадиях моделирования идентифицируется не правильно, на самом деле представляя два или несколько случаев отноше ний один ко многим между связанными сущностями. Или, в случае необ ходимости хранения дополнительных сведений о связи многие ко многим, например, даты или комментария, такая связь должна быть заменена до полнительной сущностью, содержащей эти сведения. При моделировании необходимо быть уверенным в том, что все отношения многие ко многим будут подробно обсуждены на более поздних стадиях моделирования для обеспечения правильного моделирования отношений.
5.4. Идентификация сущностей. Представление о ключах
Сущность описывается в диаграмме IDEF1X графическим объек том в виде прямоугольника. На рис. 7 приведен пример IDEF1X диаграм мы. Каждый прямоугольник, отображающий собой сущность, разделяется горизонтальной линией на часть, в которой расположены ключевые поля, и часть, где расположены неключевые поля. Верхняя часть называется ключевой областью, а нижняя часть - областью данных. Ключевая область объекта СОТРУДНИК содержит поле «Уникальный идентификатор со трудника», в области данных находятся поля «Имя сотрудника», «Адрес сотрудника», «Телефон сотрудника» и т.д.
Ключевая область содержит первичный ключ для сущности. Пер вичный ключ - это набор атрибутов, выбранных для идентификации уни кальных экземпляров сущности. Атрибуты первичного ключа располага ются над линией в ключевой области. Как следует из названия, неключе вой атрибут - это атрибут, который не был выбран ключевым. Неключе вые атрибуты располагаются под чертой, в области данных.
При создании сущности в IDEF1X модели одним из главных вопро сов, на который нужно ответить, является: «Как можно идентифицировать уникальную запись?». Требуется уникальная идентификация каждой запи си в сущности для того, чтобы правильно создать логическую модель дан ных. Напомним, что сущности в IDEF1X всегда имеют ключевую область и поэтому в каждой сущности должны быть определены ключевые атри буты.
Выбор первичного ключа для сущности является очень, важным ша гом и требует большого внимания. В качестве первичных ключей могут быть использованы несколько атрибутов или групп атрибутов. Атрибуты, которые могут быть выбраны первичными ключами, называются кандида тами в ключевые атрибуты (потенциальные атрибуты). Кандидаты в клю чи должны уникально идентифицировать каждую запись сущности. В со ответствии с этим ни одна из частей ключа не может быть NULL, т.е. не заполненной или отсутствующей. Например, для того чтобы корректно использовать сущность СОТРУДНИК в IDEF1X модели данных (а позже в базе данных), необходимо иметь возможность уникально идентифициро вать записи. Правила, по которым вы выбираете первичный ключ из спи ска предполагаемых ключей, очень строги, однако могут быть применены |ко всем типам баз данных и информации. Правила устанавливают, что ат рибуты и группы атрибутов должны:
- уникальным образом идентифицировать экземпляр сущности; - не использовать NULL значений;
- не изменяться со временем. Экземпляр идентифицируется при по мощи ключа. При изменении ключа соответственно меняется экземпляр; - быть как можно более короткими для использования индексирова-
ия и получения данных. Если вам нужно использовать ключ, являющийся Еомбинацией ключей из других сущностей, убедитесь в том, что каждая из
астей ключа соответствует правилам.
Для наглядного представления о том, как целесообразно выбирать Первичные ключи, приведем следующий пример - выберем первичный ключ для знакомой нам сущности СОТРУДНИК:
• атрибут «Ш сотрудника» является потенциальным ключом, так как рн уникален для всех экземпляров сущности СОТРУДНИК;