- •Субд Access
- •Основные понятия
- •Создание базы данных
- •Создание таблиц
- •Создание таблиц в режиме конструктора
- •Создание таблиц с помощью Мастера таблиц
- •Связывание таблиц
- •Обеспечение целостности данных
- •Задание 1
- •Сортировка
- •Фильтрация данных
- •Примеры использования символов задания шаблонов
- •Поиск информации
- •Задание 2
- •Запросы
- •Вычисления в запросах
- •Задание 3
- •Использование справочной системы
- •Задание 4
- •Задание для контрольной работы
- •Литература
- •Оглавление
Обеспечение целостности данных
В Microsoft Access обеспечивается возможность автоматической проверки целостности данных в связанных полях. Целостность данных означает систему правил, используемых для поддержания связей между записями в связанных таблицах, а также для обеспечения защиты от случайного удаления или изменения связанных данных. Установить проверку целостности данных можно, если выполнены следующие условия:
-
связанное поле главной таблицы является ключевым полем или имеет уникальный индекс;
-
связанные поля имеют один тип данных. Здесь существует два исключения. Поле счетчика может быть связано с числовым полем, если в последнем поле в свойстве Размер поля указано значение Длинное целое, или в обоих полях свойство Размер поля имеет значение Код репликации;
-
обе таблицы принадлежат одной базе данных Microsoft Access.
Замечание. Таблицы одного приложения могут содержаться и в нескольких файлах базы данных.
Чтобы обеспечить целостность, работа с данными должна производиться с учетом нижеперечисленных правил:
-
Невозможно ввести в связанное поле подчиненной таблицы значение, отсутствующее в связанном поле главной таблицы. Однако можно ввести пустое значение, показывающее, что для данной записи связь отсутствует.
-
Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице.
-
Невозможно изменить значение ключевого поля в главной таблице, если существуют записи, связанные с данной таблицей.
Чтобы эти правила контролировались для конкретной связи, при ее создании следует установить флажок Обеспечение целостности данных. Тогда любая попытка выполнить действие, нарушающее одно из перечисленных выше правил, приведет к выводу на экран предупреждения, а само действие выполнено не будет.
Чтобы преодолеть ограничения на удаление или изменение связанных записей, сохраняя при этом целостность данных, следует установить флажки каскадное обновление связанных полей и каскадное удаление связанных записей. Если установлен флажок каскадное обновление связанных полей, то при изменении ключевого поля главной таблицы автоматически будут изменены и соответствующие значения поля связанных записей. Если установлен флажок каскадное удаление связанных записей, то при удалении записи в главной таблице удаляются и все связанные записи в подчиненной таблице.
Задание 1
-
Запустить программу MS Access и в папке Мои документы создать базу данных БД???, вместо вопросительных знаков вставить в название три цифры - номер вашей группы.
-
В базе данных БД??? создать в режиме конструктора таблицу с названием «Следователь» по приведенному ниже образцу.
Код сотрудника |
Фамилия |
Имя |
Отчество |
Стаж работы |
Звание |
1 |
Ларин |
Андрей |
Васильевич |
10 |
капитан |
2 |
Волков |
Вячеслав |
Викторович |
5 |
ст. лейтенант |
3 |
Дукалис |
Анатолий |
Сергеевич |
8 |
капитан |
-
Задать для поля Код сотрудника тип «Счетчик», для поля Стаж работы - «Числовой» и «Текстовый» тип для остальных полей. Для полей Фамилия и Имя установить размер 10 символов, а для остальных текстовых полей - 15 символов.
-
В базе данных БД??? создать таблицу «Уголовные дела» по приведенному ниже образцу.
№ |
№ дела |
Статья УК |
Дата возбуждения |
Фабула |
Следователь |
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 |
-
Задать для поля № тип «Счетчик», для полей № дела, Статья УК и Следователь «Числовой» тип, тип «MEMO» для поля Фабула. Для поля Дата возбуждения выбрать тип «Дата» и краткий формат.
-
В поле Фабула записей с номерами 1 - 5 ввести соответственно следующие фабулы:
-
9.10.99 г. в период с 12 до 13 часов неизвестные лица проникли в квартиру 18 по адресу проспект Испытателей 7, принадлежащую г. Федотову А.Б. и похитили ювелирные изделия и видеотехнику на сумму 20 тысяч рублей;
-
В ночь с 6.10.99 по 7.10.99 г. неизвестные лица проникли в здание редакции газеты «Новое время» по адресу Литовский проспект 34 и учинили погром. Ущерб составил 100 тысяч рублей.
-
10.10.99 в 14 часов неизвестные лица совершили ограбление пункта обмена валюты коммерческого банка «Северная столица». Назвавшись вернувшимся с обеда охранником, один го грабителей проник в помещение через открытую кассиром дверь, ранил его и похитил 10 тысяч долларов США.
-
В период с 9.10.99 по 10.10.99 г. неизвестные лица разбили стекло в окне квартиры 127, расположенной на последнем этаже дома по адресу Сущевский вал 9, проникли в помещение и похитили драгоценности принадлежащие г. Кац Г.Г. на сумму 300 тысяч рублей.
-
7.10.99 в 8 часов, в подъезде дома по адресу ул. Баррикадная 20, выстрелом из пистолета убит генеральный директор коммерческой фирмы «Лада». На месте преступления найден пистолет ТТ и две стреляные гильзы.
-
Установить связь между созданными таблицами, используя в качестве связующего поля порядковый номер следователя в таблице «Уголовные дела», а в качестве главной таблицы - таблицу «Следователь».
-
Создать с помощью Мастера таблицу «Сотрудники» содержащую информацию о названии отдела, в котором работает сотрудник, код сотрудника и фотографию. Изменить тип поля Код сотрудника на «Числовой».
-
Заполнить таблицу «Сотрудники» фотографию следователей создать с помощью программы «Фоторобот».
-
Связать таблицу «Сотрудники» с таблицей «Следователь». Сохранить созданную базу в папке Мои документы.