Работа № 7. Создание локальных реляционных баз данных
Цель работы
Ознакомление с методами и средствами создания локальных реляционных баз данных в среде СУБД MS Access. Предполагается, что концептуальная (логическая) схема БД уже разработана.
Ознакомление с возможностями программы MS Access по созданию баз данных.
Порядок выполнения работы
Организация данных является ключевым моментом при работе с большими объемами информации. В БД MS Access информация вводится и обрабатывается с помощью форм, а хранится в виде таблиц.
Рассмотрим процесс создания реляционной БД «ООО Гастарбайтер» на основе следующей концептуальной схемы (рис. 1):
Рис. 7.1. Концептуальная схема базы данных
Задание № 1. Проектирование таблиц
Создайте папку под своим именем. Запустите программу MS Access и создайте новую базу данных. Задайте имя файла базы данных «ООО Гастарбайтер» и сохраните его в своей папке. В окне базы данных откройте вкладку Таблица и нажмите кнопку Создать. Выберите в списке диалогового окна Новая таблица способ создания Конструктор и нажмите ОК.
Примечание: в открывшемся окне конструктора таблиц в каждой строке спецификации определяются характеристики одного поля записи. В колонке Имя поля определяется его имя, в колонке Тип данных определяется вид информации, которая будет храниться в данном поле. В нижней части диалогового окна вводятся индивидуальные свойства полей.
В соответствии с Таблицей 7.1 заполните характеристики всех полей.
Таблица 7.1. (ЗДАНИЕ)
Имя поля | Тип данных | Свойства поля |
Код здания | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. Обязательное поле — Да. Индексированное поле — Да (совпадение не допускается). |
Адрес | Текстовый | Размер поля — 30. Индексированное поле — Да (совпадения не допускаются). |
Тип здания | Текстовый | Размер поля — 20. Индексированное поле — Да (допускаются совпадения). |
Уровень качества | Текстовый | Размер поля — 5. Индексированное поле — Да (допускаются совпадения). |
Дата начала | Дата/время | Формат — краткий формат даты. |
Число недель ремонта | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. |
Установка первичного ключа и сохранение таблицы.
Установите курсор на первую строку таблицы и щелкните мышью на кнопке с изображением ключа на панели инструментов.
Примечание: программа пометит поле с именем Код здания, в которое для каждого блока данных будет заноситься уникальная информация.
Выберите команду меню Файл / Сохранить как и сохраните созданную таблицу в текущей базе данных под именем Здание. Закройте окно конструктора таблицы.
Аналогичным способом создайте таблицы: Назначение, Работник и Специальность. Ключевые поля в таблицах выделены жирным шрифтом.
Таблица 7.2. (НАЗНАЧЕНИЕ)
Имя поля | Тип данных | Свойства поля |
Код работника | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. Обязательное поле — Да. Индексированное поле — Да (допускается совпадение). |
Код здания | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. Обязательное поле — Да. Индексированное поле — Да (допускается совпадение). |
Таблица 7.3. (Работник)
Имя поля | Тип данных | Свойства поля |
Код работника | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. Обязательное поле — Да. Индексированное поле — Да (допускается совпадение). |
ФИО | Текстовый | Размер поля — 30. Обязательное поле — Да. Индексированное поле — Да (допускаются совпадения). |
Специальность | Текстовый | Размер поля — 25. Индексированное поле — Да (допускаются совпадения). |
Число дней | Числовой | Размер поля — целое. Формат поля — основной. Число десятичных знаков — 0. |
Таблица 7.4. (Специальность)
Имя поля | Тип данных | Свойства поля |
Специальность | Текстовый | Размер поля — 25. Индексированное поле — Да (допускаются совпадения). |
Часовая ставка | Денежный | Формат поля — Денежный. Число десятичных знаков — 0. Индексированное поле — Нет |
Премиальные | Денежный | Формат поля — Денежный. Число десятичных знаков — 0. Индексированное поле — Нет. |
Задание № 2. Связывание таблиц
1. При построении реляционных БД программа позволяет связывать отдельные таблицы, используя ключевое поле одной таблицы и соответствующее ему поле в другой таблице.
2. Выберите из меню команды Сервис / Схема данных. На экране появится диалоговые окна Схема данных и Добавление таблицы.
3. В списке таблиц выделите все таблицы и нажмите кнопку Добавить. Закройте окно Добавление таблицы.
4. Переместите с помощью мыши используемое для связи поле Код здания из таблицы Здание к соответствующему полю таблицы Назначение. На экране появится диалоговое окно Связи.
5. Активируйте опции «Обеспечение целостности данных», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей». В поле Тип отношений проверьте установку отношения «Один ко многим».
6. Нажмите кнопку Создать. Связь отобразится графически.
7. Переместите поле Код работника из таблицы Работник к соответствующему полю таблицы Назначение. Повторите операции 4 и 5.
8. Переместите поле Специальность из таблицы Специальность к соответствующему полю таблицы Работник. Повторите операции 4 и 5.
9. Закройте окно Схема данных с сохранением схемы данных.
Задание № 3. Ввод записей.
1. Откройте таблицу Здание в режиме таблицы. Установите курсор мыши в первую ячейку первой строки и в соответствии с данными Таблицы 7.5 заполните все записи.
Примечание: в полях, для которых определены стандартные значения, автоматически заносятся указанные пользователем значения. Переход к следующему полю осуществляется клавишей TAB, перемещение между записями осуществляется клавишами управления курсором.
3. Закройте таблицу. Все данные автоматически сохранятся в созданной таблице.
Таблица 7.5 (Здание)
Имя поля | Данные | Данные | Данные | Данные | Данные |
Код здания | 5375 | 6990 | 1001 | 9015 | 6090 |
Адрес | Лесная, 57 | Сосновая, 76 | Донская, 6 | Лесная, 7 | Сосновая, 56 |
Тип здания | 32/7 | 65/9 | 76/9 | 32/7 | 76/09 |
Уровень качества | 2 | 6 | 4 | 3 | 2 |
Дата начала | 06.09.08 | 09.11.08 | 08.07.09 | 12.09.09 | 12.12.07 |
Число месяцев | 11 | 8 | 9 | 10 | 5 |
Задание № 4. Создание форм.
1. В окне базы данных перейдите на вкладку Формы и нажмите кнопку Создать. На экране появится окно Новая форма.
2. В появившемся окне выберите способ задания формы Автоформа ленточная. Выберите исходную таблицу Работник. Нажмите кнопку ОК. Появится пустая форма.
3. Заполните в соответствии с данными Таблицы 7.6 таблицу Работник. Закройте с сохранением.
4. Создайте аналогичным способом формы для заполнения таблиц Специальность и Назначение, выбрав способ задания формы Автоформа ленточная для таблицы Специальность и Автоформа в столбец для таблицы Назначение. Заполните таблицы с помощью форм в соответствии с данными Таблиц 7.7 и 7.8.
Таблица 7.6 (Работник)
Имя поля | Данные | Данные | Данные | Данные | Данные |
Код работника | 123 | 124 | 125 | 126 | 127 |
Ф.И.О | Иванов П.Н. | Соколов Р.Г. | Ванина Т.К. | Федин З.Х. | Чкалов М.И. |
Специальность |
|
|
|
|
|
Число проработанных дней | 25 | 6 | 12 | 26 | 29 |
Таблица 7.7 (Специальность)
Имя поля | Данные | Данные | Данные | Данные | Данные |
Специальность | Слесарь | Столяр | Маляр | Каменщик | Подсобный |
Часовая ставка | 80 | 100 | 95 | 124 | 50 |
Премиальные | 1000 | 1500 | 2000 | 3000 | 500 |
Таблица 7.8 (Назначение)
Имя поля | Данные | Данные | Данные | Данные | Данные |
Код работника | 123 | 124 | 125 | 126 | 127 |
Код здания | 5375 | 6990 | 5375 | 6990 | 9015 |
Задание № 5. Редактирование таблицы Работник.
1. Откройте таблицу Работник в режиме таблицы и обратите внимание, что третье поле каждой записи не заполнено.
2. Откройте в окне базы данных таблицу Работник в режиме конструктора.
3. Установите курсор на поле Специальность и в нижней части диалогового окна, где вводятся индивидуальные свойства полей на вкладку Подстановки.
4. В строке Тип элемента управления в появившемся списке укажите (щелкните) на значение Поле со списком.
5. В строке Тип источника строк назначьте Таблица или запрос.
6. В свойстве Источник строк нажмите кнопку списка и из списка таблиц выберите таблицу Специальность.
7. Перейдите в режим таблицы. Щелкните мышью в поле Специальность таблицы Работник. Откроется список, состоящий из колонки: Специальность.
8. Щелкните по первой строке списка, и наименование специальности занесется в поле ввода. Аналогично заполните поля всех работников, выбирая их из списка в произвольном порядке.
9. Закройте таблицу Работник.
Задание № 6. Использование данных Access в Excel.
1. Выделите таблицу Работник.
2. Выполните команду меню Сервис / Связи с Office / Анализ в MS Excel. Access преобразует таблицу в рабочий лист Excel.
3. Введите в ячейку E1 текст Зарплата.
4. Преобразуйте в рабочий лист Excel таблицу Специальность.
5. Командой в MS Excel Окно / Расположить… выберите расположение рабочих листов Рядом.
6. Активизируйте таблицу Работник.
7. Выделите ячейку E2 и подсчитайте зарплату для сотрудника Иванова по формуле: Количество отработанных дней * на часовую ставку*8 + Премиальные. Необходимые данные следует брать из двух таблиц.
8. Подсчитайте зарплату по этой же формуле и для других сотрудников.
9. Сохраните изменения, введенные в таблицу Работник в файле под новым именем Зарплата_работника в своей папке.
10. Закройте таблицу Специальность.
Задание № 7. Импорт данных Excel в Access.
1. Выделите ячейку E1 в таблице Зарплата_работника. Скопируйте содержимое ячейки в буфер обмена.
2. Откройте файл Работник.XLS. Вставьте содержимое буфера обмена в ячейку E1.
3. В таблице Зарплата_работника выделите диапазон ячеек E2:E6 и скопируйте в буфер обмена (ячейки содержат формулы расчета зарплаты).
4. Перейдите в таблицу Работник. Выделите диапазон E2:E6. Выберите команды Правка / Специальная вставка. В диалоговом окне установите переключатель Значения и нажмите кнопку ОК. В таблице зафиксируются вместо формул рассчитанные по этим формулам значения.
5. Закройте таблицу Работник.XLS с сохранением изменений. Закройте таблицу Зарплата_работника. Закройте Excel.
6. В MS Access выберите команду меню Файл / Внешние данные / Импорт. Появится диалоговое окно Импорт.
7. В диалоговом окне Импорт установите тип файла Microsoft Excel, выделите файл Зарплата_работника и нажмите кнопку Импорт.
8. Установите флажок. Первая строка содержит заголовки столбцов и нажмите кнопку Далее.
9. Выберите переключатель В новой таблице. Нажмите кнопку Далее.
10. Импортируйте все поля. Нажмите кнопку Далее.
11. Установите переключатель Определить следующий ключ и выберите ключевое поле Код Работника. Нажмите кнопку Далее.
12. Введите имя таблицы Зарплата. Нажмите кнопку Готово. Access импортирует таблицу и сообщает об успешном окончании процесса. Щелкните на кнопке ОК.
13. Откройте таблицу Зарплата в режиме конструктора и удалите все поля кроме Код работника и Зарплата.
14. Откройте схему данных, добавьте таблицу Зарплата и установите связь с таблицей Работник по полю Код работника. Активировать опции «Обеспечение целостности данных», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей» не нужно.
Оформление отчета
Отчет должен содержать:
Цель работы.
Схему данных.
Краткое описание последовательности выполнения и выводы по каждому заданию.
Выводы обо всей проделанной работе.
- Оглавление
- Работа № 1. Оптимальные бизнес-планы, план по продукции, технология оптимизации
- Работа № 2. Выбор поставщиков, план перевозок, транспортная задача
- Работа № 3. Расчет резерва по вкладам
- Характеристика вкладов
- Справочник открытых вкладов
- Расчет резерва по счетам в месяце: ……….
- Расчет резерва по видам вкладов в месяце: ……….
- Работа № 4. Оптимальная ставка налога, имитационное моделирование
- Работа № 5. Разработка аис для расчета амортизационных отчислений
- Справочник сроков и способов расчета амортизации Вх.Ф.№ 1
- Расчет годовой суммы амортизации Пром.Ф.№ 1
- Работа № 6. Разработка автоматизированной системы по начислению заработной платы
- Учетные сведения о сотрудниках отделения
- Количество дней невыхода на работу без причины
- Количество дней нахождения в административном отпуске
- Количество дней по больничным листам
- Фактическое количество отработанных дней в текущем месяце
- Справочные данные
- Разряды единой тарифной сетки
- Работа № 7. Создание локальных реляционных баз данных
- Работа № 8. Обработка данных в локальных реляционных базах данных
- Работа № 9. Нормализация реляционной бд
- Работа № 10. Создание er-модели и ее нормализация