Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка Access.doc
Скачиваний:
5
Добавлен:
23.11.2018
Размер:
868.35 Кб
Скачать

Обеспечение целостности данных

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

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

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

  • обе таблицы принадлежат одной базе данных Microsoft Access.

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

Чтобы обеспечить целостность, работа с данными должна производиться с учетом нижеперечисленных правил:

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

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

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

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

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

Задание 1

  1. Запустить программу MS Access и в папке Мои документы создать базу данных БД???, вместо вопросительных знаков вставить в название три цифры - номер вашей группы.

  2. В базе данных БД??? создать в режиме конструктора таблицу с названием «Следователь» по приведенному ниже образцу.

Код сотрудника

Фамилия

Имя

Отчество

Стаж работы

Звание

1

Ларин

Андрей

Васильевич

10

капитан

2

Волков

Вячеслав

Викторович

5

ст. лейтенант

3

Дукалис

Анатолий

Сергеевич

8

капитан

  1. Задать для поля Код сотрудника тип «Счетчик», для поля Стаж работы - «Числовой» и «Текстовый» тип для остальных полей. Для полей Фамилия и Имя установить размер 10 символов, а для остальных текстовых полей - 15 символов.

  2. В базе данных БД??? создать таблицу «Уголовные дела» по приведенному ниже образцу.

дела

Статья УК

Дата возбуждения

Фабула

Следователь

1

ПО

158

10.10.99

1

2

111

167

08.10.99

2

3

112

162

11.10.99

3

4

113

158

10.10.99

2

5

114

105

08.10.99

3

  1. Задать для поля тип «Счетчик», для полей дела, Статья УК и Следователь «Числовой» тип, тип «MEMO» для поля Фабула. Для поля Дата возбуждения выбрать тип «Дата» и краткий формат.

  2. В поле Фабула записей с номерами 1 - 5 ввести соответственно следующие фабулы:

  1. 9.10.99 г. в период с 12 до 13 часов неизвестные лица проникли в квартиру 18 по адресу проспект Испытателей 7, принадлежащую г. Федотову А.Б. и похитили ювелирные изделия и видеотехнику на сумму 20 тысяч рублей;

  2. В ночь с 6.10.99 по 7.10.99 г. неизвестные лица проникли в здание редакции газеты «Новое время» по адресу Литовский проспект 34 и учинили погром. Ущерб составил 100 тысяч рублей.

  3. 10.10.99 в 14 часов неизвестные лица совершили ограбление пункта обмена валюты коммерческого банка «Северная столица». Назвавшись вернувшимся с обеда охранником, один го грабителей проник в помещение через открытую кассиром дверь, ранил его и похитил 10 тысяч долларов США.

  4. В период с 9.10.99 по 10.10.99 г. неизвестные лица разбили стекло в окне квартиры 127, расположенной на последнем этаже дома по адресу Сущевский вал 9, проникли в помещение и похитили драгоценности принадлежащие г. Кац Г.Г. на сумму 300 тысяч рублей.

  5. 7.10.99 в 8 часов, в подъезде дома по адресу ул. Баррикадная 20, выстрелом из пистолета убит генеральный директор коммерческой фирмы «Лада». На месте преступления найден пистолет ТТ и две стреляные гильзы.

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

  2. Создать с помощью Мастера таблицу «Сотрудники» содержащую информацию о названии отдела, в котором работает сотрудник, код сотрудника и фотографию. Изменить тип поля Код сотрудника на «Числовой».

  3. Заполнить таблицу «Сотрудники» фотографию следователей создать с помощью программы «Фоторобот».

  4. Связать таблицу «Сотрудники» с таблицей «Следователь». Сохранить созданную базу в папке Мои документы.