Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТ_в эк_3_2011.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
203.26 Кб
Скачать

Студент_группы Студент Группа

Н омер* Номер* Группа*

Ф амилия Фамилия Староста

И мя = Имя +

Отчество Отчество

Дата Дата

Факультет Факультет

Г руппа Группа

С тароста

Другой пример «расщепления» структуры ИОб Успеваемость.

Успеваемость Студент Оценка_дисциплина

Номер* Номер* Номер*

ФИО ФИО Дисциплина*

Дисциплина* = + Оценка

Оценка

Типы связей. ИОб конкретной по обычно связаны между собой. При этом возможны связи следующих типов:

  • один-к-одному (1:1);

  • один-ко-многим (1:M);

  • многие-ко-многим (М:М).

Связь «один-к-одному» (1:1) предполагает, что в каждый момент времени одному экземпляру Аi ИОб А соответствует не более одного экземпляра Бj ИОб Б и наоборот, что графически изображается так:

А

Б

А1 Б1

А2 Б2

При связи «один-ко-многим» (1:М) одному экземпляру Аi ИОб А соответствует 0, 1 или более экземпляров объекта Б, но каждый экземпляр Бj связан не более, чем с 1 экземпляром Аi, что графически изображается так:

А1 Б1

А

Б

А2 Б2

А3 Б3

Связь «многие-ко-многим» (М:М) предполагает, что в каждый момент времени одному экземпляру Аi ИОб А соответствует 0, 1 или более экземпляров Бj и наоборот:

А

Б

А1 Б1

А2 Б2

А3 Б3

Рассмотрим базу данных «Учебный процесс», состоящую из четырех ИОб:

1. Студент(Номер, Фамилия, Имя, Отчество, Пол, Дата, Факультет, Группа)

2. Сессия (Номер, Оценка1, Оценка2, Оценка3, Оцкнка4, Результат)

3. Стипендия (Результат, Процент)

4. Преподаватель (Код,Фамилия, Имя, Отчество),

Между ИОб Студент и Сессия следует установить связь 1:1, а именно:

Студент Сессия,

поскольку каждый студент имеет после сессии определенный набор экзаменационных оценок.

Между ИОб Стипендия и Сессия существует связь 1:М, а именно:

Стипендия Сессия,

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

Между ИОб Студент и Преподаватель имеет место связь М:М, а именно:

Студент Преподаватель,

так как один студент обучается у многих преподавателей, и один преподаватель обучает многих студентов.

Обеспечение целостности базы данных. В процессе создания структуры БзД, т.е. определения входящих в нее таблиц, необходимо позаботиться о целостности БзД. Целостность БзД обеспечивается встроенными в СУБД средствами:

  • назначения первичного ключа, в том числе средствами для работы с полем типа «счетчик» (т.е. полем с автоматическим приращением на 1 при переходе к следующему экземпляру ИОб; при этом СУБД сама присваивает экземпляру новое уникальное значение);

  • поддержания ссылочной целостности, которые записывают информацию о связях между таблицами и автоматически пресекают любую операцию, приводящую к нарушению ссылочной целостности.

Обеспечение безопасности. Средства обеспечения безопасности данных основываются на выполнение следующих операций:

  • защита паролем;

  • шифрование данных;

  • ограничение уровня доступа (к БзД в целом, к таблице, к словарю).

Сравнительный анализ популярных СУБД. Оценка характеристик популярных СУБД в баллах приведена в табл.1. В случае “да”, 1 – лучшая 5 – худшая оценка.

Производительность СУБД оценивается:

  • временем выполнения запросов;

  • скоростью поиска информации в неиндексированных полях;

  • временем импортирования БзД из других форматов;

  • cкоростью выполнения операций обновления, вставки, удаления данных;

  • временем генерации отчета и др.

Необходимость слежения за целостностью данных также влияет на производительность СУБД.

Таблица 1

Наименование

dBase IV

MS Access

MS Fox Pro

Paradox

Производительность

4

3

1

2

Обеспечение целостности

нет

1

нет

2

Обеспечение безопасности

1

2

5

4

Импорт-экспорт

2

1

1

1

Доступ к данным SQL

2

1

2

3

Возможности запросов и сред-ства разработки приложений

3

3

1

4

Как видно из приведенных в табл. 2 характеристик СУБД, MS Access наилучшим образом соответствует реляционной модели БзД по надежности сохранения целостности данных (правила, обеспечивающие целостность базы данных, хранятся вместе с БзД и соблюдаются автоматически).

Кроме того, MS Access имеет хорошие характеристики безопасности (может назначать пароли для индивидуальных пользователей (ПЗ) или {ПЗ}, присваивает различные права доступа отдельно таблицам, запросам, отчетам и т.д. на уровне ПЗ или группы ПЗ).

Т е м а 4.3. Разработка структуры БЗД по описанию предметной области

Покажем разработку структуры БЗД на примере решения упрощенной задачи для предметной области «Завод», имеющей следующее содержательное описание:

В цехах завода используются детали, поставляемые по определенной стоимости другими заводами, в том числе находящимися в других странах. Цех возглавляет начальник цеха, отвечающий за информацию о необходимых деталях и руководящий служащими цеха. Служащие имеют определенную зарплату, причем необходимо знать дату их поступления на завод.

Решение.

А. Выделение ИЭл и ИОб. Выделим ИЭлементы и рассмотрим несколько возможных вариантов организации их в ИОбъекты

Вариант 1. БзД в виде одной таблицы «Цех» (одного ИОб).

Цех:

( Название цеха;

Начальник цеха;

Деталь, используемая в цеху;

Завод-поставщик детали;

Страна-местонахождение завода-поставщика детали;

Служащий цеха;

Зарплата служащего цеха;

Дата поступления служащего цеха на работу).

Вариант 2. БзД в виде двух таблиц (двух ИОб)

Цех:

( Название цеха, использующего деталь;

Начальник цеха;

Деталь, используемая в цеху;

Стоимость детали, используемой в цеху;

Завод-поставщик детали;

Страна-местонахождение завода-поставщика детали).

Служащий:

( Служащий цеха;

Зарплата служащего цеха;

Дата поступления на работу;

Название цеха, в котором он работает).

По приведенным вариантам видно, что при одном и том же количестве ИЭл в предметной области, может быть выделено большое количество различных ИОб. Какой же вариант предпочтительнее? Тот, в котором меньшее число дублированных ИЭл, так как такой вариант позволит упростить изменение ИЭл и внесение новых экземпляров в ИОб данной БзД. Другая сторона предпочтительности такого выделения ИОб (таблиц) – использование в каждой из них функциональной зависимости (X Yi, где X – ключ таблицы, а Yi, – её описательные атрибуты, причем каждое значение ключа xX определяет одно значение описательного атрибута y Yi).

В варианте 1 ключ, т. е. атрибут, определяющий экземпляр ИОб – это номер цеха, тогда

Название цеха  Начальник цеха (функциональное отношение)

Название цеха  {Деталь} (отношение 1: m)

Название цеха  {Завод- поставщик детали} (отношение 1: m)

Название цеха  {Служащий} (отношение 1: m)

В варианте 2 ИОб «Цех» имеет такие же недостатки, а ИОб «Служащий» удовлетворяет требованию функциональной зависимости -

Служащий:

Служащий цеха Зарплата служащего цеха,

(ключевой Дата поступления на работу,