Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Access-3

.pdf
Скачиваний:
20
Добавлен:
21.03.2015
Размер:
215.82 Кб
Скачать

ЛАБОРАТОРНАЯ РАБОТА № 3

Поддержка целостности данных. Использование каскадных операций.

(1ч)

Цели работы

Врезультате выполнения данной работы студенты должны научиться:

Осуществлять поддержку целостности данных при связывании таблиц;

Производить каскадные изменения;

Производить каскадные удаления.

Усвязывания таблиц два основных назначения: Первое – обеспечение целостности данных; Второе – автоматизация обслуживания базы.

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

Связь между таблицами позволяет:

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

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

1. Поддержка целостности данных.

Установив целостность данных, необходимо следовать следующим правилам:

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

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

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

Задание 1. Проверьте, на примере базы данных Книготорговля, выполнение поддержки целостности данных в связанных таблицах.

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

Создайте в ней (любым известным вам способом) новую таблицу Покупки, которая будет содержать информацию о закупленных книгах. Данная таблица должна содержать следующие поля: Наименование, Автор, Дата покупки, Кол-во экз. (шт), Цена продажи. Типы полей задайте самостоятельно.

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

Добавьте новую таблицу в схему данных (кнопка на панели инструментов).

Альтернативные способы выполнения последнего действия: меню Связи > Добавить таблицу, или такая же команда контекстного меню пустой области на схеме данных.

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

таблицей.

Закройте окно Схема данных и откройте главную таблицу в режиме таблицы.

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

Вернитесь на схему данных, откройте для связи с таблицей Покупки окно Изменение связей (команда контекстного меню для самой связи или команда верхнего меню Связи > Изменить связь).

Поставьте флажок Обеспечение целостности связи и нажмите ОК. Обратите внимание на значки, появившиеся на концах связи. Что они означают?

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

Закройте окно Схема данных. Откройте таблицу Книготорговля в режиме таблицы и попытайтесь теперь удалить любую запись. Сделайте вывод.

2. Каскадные операции.

Задание 2. Самостоятельно проверьте действие команд Каскадное удаление связанных записей и Каскадное обновление связанных записей. В первом случае записи из главной таблицы надо попытаться удалить, а в другом – изменить. И проверить данные изменения в подчиненных таблицах.

Проектирование и создание базы данных на основе модельных сведений. (1ч)

Цели работы

Врезультате выполнения данной работы студенты должны научиться:

Проектировать базу данных на основе модельных сведений;

Определять необходимость разделения базы данных на несколько базовых таблиц во избежание повтора данных в таблицах.

Закрепить умения:

создавать спроектированные базовые таблицы;

заполнять их модельными данными;

создавать связи между таблицами на схеме данных;

устанавливать условия поддержки целостности данных.

Задание 1. Проанализируйте следующие модельные данные. Найдите повторы данных и сделайте

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

тетради схему базы данных, укажите для каждой таблицы список полей, установите связи и

ключевые поля. Попросите преподавателя утвердить ваш проект, объясните основные принципы

разделения таблиц.

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

 

Кол-во на

 

Дата

 

Поставщик

 

Адрес

 

Телефон

 

Отпущен

 

Телефон

 

Дата

товара

 

складе

 

поступления

 

 

 

поставщика

 

поставщика

 

клиенту

 

клиента

 

продажи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Бумага А4

 

1000

 

01.01.02

 

ООО Парус

 

С-Петербург

 

111-11-11

 

Маг.Папирус

 

33-33-33

 

02.01.02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Скрепки

 

3

 

10.05.65

 

ТОО Каро

 

Мурманск

 

22-22-22

 

Ун. Дет. мир

 

44-44-44

 

11.03.03

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ручка

 

3400

 

23.12.01

 

ТОО Каро

 

Мурманск

 

22-22-22

 

Маг.Папирус

 

33-33-33

 

02.01.02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Карандаш

 

234

 

15.11.01

 

ТОО Каро

 

Мурманск

 

22-22-22

 

Маг.Папирус

 

33-33-33

 

02.01.02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Бумага цв.

 

6757

 

03.02.03

 

ООО Парус

 

С-Петербург

 

111-11-11

 

Ун. Дет. мир

 

44-44-44

 

11.03.03

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Папка д. бумаг

 

1232

 

30.03.03

 

ООО Парус

 

С-Петербург

 

111-11-11

 

Маг.Папирус

 

33-33-33

 

02.01.02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Задание 3. Заполните ваши базовые таблицы модельными данными. Проверьте при этом действие реляционных связей. Установите условия целостности данных.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]