Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РМД.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
7 Мб
Скачать
☆

Контрольные вопросы по разделу 1

  1. Что такое РМД? Дайте определение.

  2. Перечислите основные элементы РМД.

  3. В чем особенность РМД?

  4. Что такое сущность в РМД?

  5. Что такое атрибут, кортеж в РМД?

  6. Что такое домен в РМД? Какое количество доменов включает в себя отношение «Товар» (рисунок 1.6)?

  7. Для чего нужен первичный ключ?

  8. Какой первичный ключ не является избыточным?

  9. С какой целью устанавливаются связи между отношениями в РМД?

  10. Какие виды связей вы знаете?

  11. Какой тип связи в РМД используется чаще всего и почему?

  12. Что такое внешний ключ?

  13. Перечислите восемь основных операторов реляционной алгебры?

  14. В чем смысл свойства ассоциативности?

  15. В чем смысл свойства коммутативности;

Контрольное задание по разделу 1

Дано 3 примера вычислений реляционной алгебры. Определите, какие операторы использовались при вычислениях, и впишите их названия в шаблон?

Примерные задания для подготовки к тестированию в системе Moodle по материалу раздела 1

  1. Впишите в правую часть таблицы соответствующие компоненты реляционной БД (из представленного списка): ТАБЛИЦА, СТРОКА, СТОЛБЕЦ:

Сущность

Атрибут

Экземпляр сущности

  1. Сопоставьте определения:

1. Сущность

А) поименованная характеристика сущности

2. Атрибут

Б) множество однотипных объектов

3. Экземпляр сущности

С) отдельный объект сущности

1. ___ 2. ___ 3. ___

  1. Ключевое поле в таблице реляционной базы данных – это:

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

  • набор допустимых значений и операций над данными;

  • логическое отношение между сущностями, выражающее некоторое ограничение или правило;

  • поле, представляющее первичный ключ или являющееся частью составного первичного ключа.

  1. . Связь между таблицами в БД – это:

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

  • набор допустимых значений и операций над данными;

  • логическое отношение между сущностями, выражающее некоторое ограничение или правило;

  • поле, представляющее первичный ключ или являющееся частью составного первичного ключа.

  1. Сопоставьте определения:

1. Сущность

А) Студент

2. Атрибут

Б) Иванов И. И.

3. Экземпляр сущности

С) ФИО, Группа

1. ___ 2. ___ 3. ___

Раздел 2. Проектирование реляционных баз данных на основе принципов нормализации

2.1 Целостность баз данных. Ограничения целостности.

Одним из понятий, неразрывно связанных с базами данных, является целостность. Это понятие может относиться как к самой БД – целостность БД, так и к способу физического хранения БД – целостность файла БД.

Целостность БД - это соответствие информационной модели предметной области, хранимой в базе данных, объектам реального мира и их взаимосвязям в каждый момент времени, т.е. это правильность и непротиворечивость данных в БД в любой момент времени.

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

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

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

Поддержание целостности БД включает проверку целостности и ее восстановление в случае обнаружения противоречий в базе данных. Целостное состояние БД описывается с помощью ограничений целостности в виде условий, которым должны удовлетворять хранимые в базе данные. Примером таких условий может служить ограничение диапазонов возможных значений атрибутов объектов, сведения о которых хранятся в БД, или отсутствие повторяющихся записей в таблицах реляционных БД [12].

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

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

Ограничения целостности БД – это условия проверки допустимости данных и связей в БД. Ограничения целостности (ОЦ) могут относиться к разным информационным объектам: к полю, записи, таблице, связям между таблицами, файлу, к связям между файлами.

По способу задания ОЦ делятся на явные и неявные. Неявные ограничения целостности определяются моделью данных и проверяются СУБД «автоматически», например, в сетевых СУБД каждый набор может иметь только одного владельца, в иерархической БД каждая запись - потомок может иметь только одного предка, ключ реляционной таблицы всегда принимает уникальные значения.

Явные ограничения целостности должны быть описаны разработчиком БД. Различают три разновидности явно задаваемых ОЦ [4]:

1. Ограничения на значения данных, которые вызваны способом кодирования и хранения данных:

  • значения атрибута должны находиться в заданном диапазоне. Открытый диапазон фиксирует только одну границу (например, заработная плата не меньше минимальной), закрытый диапазон - обе границы (например, возраст принимаемых сотрудников от 20 до 40 лет);

  • значения атрибута выбираются из небольшого набора допустимых значений, например, значение поля «Образование» может быть выбрано из массива {начальное, неполное среднее, среднее, неполное высшее, высшее};

  • значения атрибута должны соответствовать заданному типу и формату данных, например, для хранения дня, месяца и года рождения лучше использовать поле «Дата рождения» календарного, а не числового или символьного типа, так как СУБД позволяет автоматически контролировать ввод;

  • значения атрибута должны быть обязательно определены; например, в списке сотрудников поля ФИО, Оклад должны быть определены, а Ученая степень может отсутствовать;

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

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

  • значения первичного ключа и возможных ключей любой таблицы должны быть уникальны. Следует запрещать ввод любой записи со значением ключа, повторяющим уже имеющееся значение. Например, при вводе данных о новом сотруднике следует запретить ввод табельного номера, если такой код уже есть в БД;

  • атрибуты одной таблицы могут быть связаны отношением - логическим или арифметическим, например, логическая связь: СТАЖ < ВОЗРАСТ, арифметическая связь: СУММА = КОЛИЧ * ЦЕНА. Более сложный, но не менее частый случай - когда ограничение накладывается на связи между разными объектами;

  • значения поля, которое используется для связи с другой таблицей (внешний ключ), должны совпадать со значениями ключа в связанной таблице. Это ограничение похоже на выбор значения атрибута из небольшого набора допустимых значений, но роль области допустимых значений играет поле другой таблицы;

  • значения поля вычисляются или ограничиваются значениями полей из других файлов.