6
Вкладка Работа с базами данных содержит команды работы со структурой базы.
Вкладка Внешние данные предназначена для экспорта или импорта данных различных форматов.
В области навигации отображается перечень объектов базы.
Задание 2. Проектирование базы данных. Создание файла базы
Задача.
Реализовать локальную базу данных для учета взысканий и поощрений сотрудников отдела органов внутренних дел.
О каждом взыскании требуется хранить следующую информацию
№ |
ФИО |
должность |
специальное |
вид взыс- |
причина |
кем |
№ |
дата |
отметка о |
|
сотрудника |
звание |
кания |
наложено |
приказа |
приказа |
снятии |
||||
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
О каждом поощрении требуется хранить следующую информацию
№ |
ФИО |
должность |
специальное |
вид поощ- |
мотив |
кем при- |
№ |
дата при- |
|
сотрудника |
звание |
рения |
поощрения |
менено |
приказа |
каза |
|||
|
|
||||||||
|
|
|
|
|
|
|
|
|
С точки зрения реализации обе таблицы имеют существенные недостатки – в них содержится большое количество повторяющейся информации (данные о сотруднике). В этом случае целесообразно выделить данные в отдельную таблицу, добавив к ним уникальную информацию – личный номер сотрудника и дополнительное поле, содержащее сведения о подразделении, а также разбив поле ФИО сотрудника на три поля (Таблица 1).
Таблица 1 – Список сотрудников
Личный |
Фамилия |
Имя |
Отчество |
должность |
подразделение |
специальное |
|
номер |
звание |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
Еще одним недостатком исходных таблиц является необходимость ручного ввода видов взысканий и поощрений, что усложняет контроль за корректностью ввода этих данных, поскольку все виды взысканий и поощрений закреплены нормативно-правовым документом. В этом случае целесообразно выделить эти виды в отдельные таблицы (Таблица 2, Таблица 3).
Таблица 2 – Виды взысканий
Код вид взыскания
Таблица 3 – Виды поощрений
Код вид поощрения
Также к недостаткам исходных таблиц можно отнести тот факт, что о каждом приказе в записи хранятся три сведения: дата приказа, номер приказа и сведения о лице, подписавшем приказ. Эти сведения также можно оформить в виде отдельных таблиц (Таблица 4, Таблица 5).
Таблица 4 – Приказы о взысканиях
№ |
дата приказа |
кем наложено |
|
приказа |
|||
|
|
||
|
|
|
7
Таблица 5 – Приказы о поощрениях
№ |
дата приказа |
кем применено |
|
приказа |
|||
|
|
||
|
|
|
Поскольку часть данных выделяется в отдельные таблицы, исходные таблицы также претерпят изменения – в них необходимо оставить поля для связи с введенными таблицами, а избыточную информацию удалить (Таблица 6, Таблица 7).
Таблица 6 – Журнал учета взысканий
|
Личный |
код взыс- |
|
№ |
отметка |
|
№ |
номер |
причина |
о сня- |
|||
кания |
приказа |
|||||
|
сотрудника |
|
тии |
|||
|
|
|
|
|||
|
|
|
|
|
|
Таблица 7 – Журнал учета поощрений
|
Личный |
код поощ- |
мотив по- |
№ |
|
№ |
номер |
||||
рения |
ощрения |
приказа |
|||
|
сотрудника |
||||
|
|
|
|
||
|
|
|
|
|
Таким образом, целесообразная структура базы данных предусматривает пять таблиц со следующей взаимосвязью (Рисунок 2).
Рисунок 2 – Структура базы данных
8
1.Запустите программу Microsoft Access.
2.На вкладке Файл выберите пункт Создать.
3.В доступных шаблонах выберите иконку Пустая база данных рабочего стола.
4.Укажите папку для сохранения базы данных и присвойте ей имя
Книга учета поощрений и взысканий.
5.Нажмите кнопку Создать.
Будет создана пустая база данных. По умолчанию в созданной базе данных будет присутствовать только одна таблица с полем по умолчанию.
6. Щелкните правой кнопкой мыши на ярлычке таблицы во вкладках документов и закройте таблицу.
Задание 3. Создание таблиц Таблица – это элемент базы данных, предназначенный для хранения
информации. Для выдачи информации этот объект не предназначен, поэтому представление данных в таблице, как правило, не форматируют, а рядовой пользователь таблиц доступа к ним не имеет вообще.
Наиболее гибким способом создания таблиц в Access является Конструктор таблиц.
1. На вкладке Создание выполните команду Конструктор таблиц. Будет создан шаблон новой таблицы (Рисунок 3).
Рисунок 3 – Конструктор таблиц
В верхней части конструктора располагается список полей с указанием их типов, в нижней части – вкладки свойств выделенного поля.
Создание баз данных начинают, как правило, с главных таблиц, то есть, таких таблиц, у которых отсутствуют подчиненные.
2.Создайте таблицу Виды взысканий.
2.1.В поле Имя поля введите Код.
9
2.2.В списке Тип данных укажите Числовой.
2.3.Установите следующие свойства: Размер поля – Байт, Число де-
сятичных знаков – 0, Обязательное поле – Да, Индексированное поле – Да (совпадения не допускаются). Последний параметр позволит однозначно идентифицировать вид взыскания по его числовому коду.
2.4.В поле Имя поля введите Вид взыскания.
2.5.В списке Тип данных укажите Короткий текст.
2.6.Установите следующие свойства: Размер поля – 50, Обязатель-
ное поле – Да, Пустые строки – Нет. Остальные параметры оставьте по умолчанию.
2.7.Каждая таблица должна иметь ключевое поле – поле, значения в котором не повторяются, если такового поля нет, то Access может создать ключевое поле автоматически. В нашем случае совпадений не будет в поле Код.
2.8.Установите курсор в строку поля Код и выполните команду ключевое поле на вкладке Конструктор.
2.9.Список таблицы должен принять следующий вид (Рисунок 4).
Рисунок 4 – Поля таблицы Виды взысканий
2.10.Сохраните таблицу, присвоив ей имя Виды взысканий.
2.10.1.В строке меню нажмите на кнопку Сохранить
.
2.10.2.В появившемся диалоговом окне введите имя таблицы: Виды
взысканий.
2.10.3. Нажмите кнопку ОК. Таблица будет создана и появится в области навигации.
2.11.В списке вкладок нажмите правой клавишей мыши на заголовке таблицы Виды взысканий и закройте конструктор.
3. Аналогичным образом создайте таблицу Виды поощрений, установив для полей следующие свойства.
3.1.Поле Код. Тип – Числовой, Размер поля – Байт, Число десятичных знаков – 0, Обязательное поле – Да, Индексированное поле – Да (совпадения не допускаются).
3.2.Поле Вид поощрения. Тип – Короткий текст, Размер поля – 150, Обязательное поле – Да, Пустые строки – Нет.
3.3.Ключевое поле – Код.
10
4.Создайте таблицу Приказы о взысканиях.
4.1.Поле Номер приказа. Тип – Короткий текст, Размер поля – 10, Обязательное поле – Да, Пустые строки – Нет, Индексированное поле – Да (совпадения не допускаются).
4.2.Поле Дата приказа. Тип – Дата и время. Формат – Краткий формат даты. Обязательное поле – Да.
4.3.Поле Кем наложено. Тип – Короткий текст, Размер поля – 50, Обязательное поле – Да, Пустые строки – Нет.
4.4.Ключевое поле – Номер приказа.
5.Создайте таблицу Приказы о поощрениях.
5.1.Поле Номер приказа. Тип – Короткий текст, Размер поля – 10, Обязательное поле – Да, Пустые строки – Нет, Индексированное поле – Да (совпадения не допускаются).
5.2.Поле Дата приказа. Тип – Дата и время. Формат – Краткий формат даты. Обязательное поле – Да.
5.3.Поле Кем применено. Тип – Короткий текст, Размер поля – 50, Обязательное поле – Да, Пустые строки – Нет.
5.4.Ключевое поле – Номер приказа.
6.Создайте таблицу Журнал учета взысканий.
6.1.Поле Номер. Тип – Счетчик.
6.2.Поле Личный номер. Тип – Короткий текст, Размер поля – 10, Обязательное поле – Да, Пустые строки – Нет. Обязательное поле – Да, Индексированное поле – Нет.
6.3.Поле Код взыскания. Имеет тот же тип, формат и свойства, что и поле Код в таблице Виды взысканий, за исключением того, что поле является неиндексированным.
6.4.Поле Причина. Тип – поле Длинный текст. Этот тип позволяет использовать в качестве значения текст большого объема.
6.5.Поле Номер приказа. Имеет тот же тип, формат и свойства, что и поле Номер приказа в таблице Приказы о взысканиях, за ис-
ключением того, что поле является неиндексированным.
6.6.Поле Отметка о снятии. Тип – Логический. Формат – Вкл/Выкл. Значение по умолчанию – 0.
6.7.Ключевое поле – Номер.
7.Создайте таблицу Журнал учета поощрений.
7.1.Поле Номер. Тип – Счетчик.
7.2.Поле Личный номер. Тип – Короткий текст, Размер поля – 10, Обязательное поле – Да, Пустые строки – Нет. Обязательное поле – Да, Индексированное поле – Нет.