Проектирование базы данных "Отдел кадров"

Министерство образования и науки Республики Казахстан

Казахстанский инженерно-технологический университет

Кафедра «Вычислительная техника, автоматизаций и телекоммуникации»

















КУРСОВАЯ РАБОТА

Проектирование базы данных "Отдел кадров"







Выполнил: студент 4-го курса.

ВТиПО з/о

Проверила:

препод. Бекназарова У.О.

















Алматы 2010г.


Содержание



		Введение	3

		1. Определение предметной области	4

		1.1 Назначение информационной системы	4

		1.2 Характеристика документов и атрибутов предметной области	4

		2. Проектирование информационной системы	8

		2.1 Построение инфологической модели	8

		3. Объекты базы данных Microsoft Access	9

		3.1 Таблицы	9

3.2 Запросы	13

3.3 Создание форм	16

3.4 Создание отчетов	18

Заключение	19

Список использованной литературы	20




Введение



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

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

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

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




1. Определение предметной области



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



1.1 Назначение информационной системы



Информационная система предназначена для решения следующих задач:

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

получения списка сотрудников имеющих высшее образование;

список всей базы;

поиск сотрудников по табельному номеру;

вывод информации о сотрудниках и всей организации;

вывод информации о заработной плате сотрудников;

вывод отчета о количестве отработанных часов по каждому сотруднику;



1.2 Характеристика документов и атрибутов предметной области



При оформлении нового сотрудника в карточку «сотрудник» вносится следующая информация: фамилия, имя, отчество сотрудника, номер паспорта, должность. Все поля карточки являются обязательными к заполнению. Форма данного документа изображена ниже:

Личная карточка сотрудника

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

Номер паспорта___________

Имя_____________________

Отчество_________________

Фамилия_________________

Должность_______________

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

Контактная информация

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

Имя_____________________

Отчество_________________

Фамилия_________________

Должность________________

Адрес____________________

Домашний телефон________

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

Личная информация

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

Имя_____________________

Отчество_________________

Фамилия_________________

Дата рождения____________

Имя супруга______________

В карточке «образование» указываются: личный код сотрудника, фамилия, имя, отчество, наличие образования (высшее/среднее), номер аттестата, номер диплома. Все поля, кроме поля «№ диплома» заполняются обязательно. Поле «№ диплома» заполняется при наличии у сотрудника высшего образования. Дана форма выглядит следующим образом:

Образование

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

Имя_____________________

Отчество_________________

Фамилия_________________

Образование______________

№ аттестата_______________

№ диплома_______________

Карточка «заработная плата» заполняется сотрудником отдела кадров по следующим параметрам: код сотрудника, фамилия, имя, отчество, размер заработной платы (указывается цифрами) и имеет следующее документальное оформление:

Заработная плата

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

Имя_____________________

Отчество_________________

Фамилия_________________

Зарплата_________________

Документ «рабочее время» является табелем учета рабочего времени сотрудников. Заполняется работником отдела кадров один раз в неделю. Здесь указываются: код сотрудника, фамилия, имя, отчество, неделя, количество отработанных часов в неделю. Поле «неделя» заполняется цифрами (1,2,3,4).

Рабочее время

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

Имя_____________________

Отчество_________________

Фамилия_________________

Неделя___________________

Количество часов_________




2. Проектирование информационной системы



2.1 Построение инфологической модели



В соответствии с описанием предметной области можно выделить такие информационные объекты как личная карточка сотрудника (сотрудник), контактная информация, личная информация, образование, заработная плата, рабочее время. Отобразим эти объекты на диаграмме «сущность-связь», выявим и изобразим на диаграмме связи между объектами и атрибуты объектов. Полученная диаграмма показана на рис. 1. Идентифицирующие (ключевые) атрибуты информационных объектов на рис. 1 обозначены подчеркиванием. Мощности связей между сущностями обозначены на концах соответствующих линий: цифра “1” означает, что в данном информационном объекте связанному объекту отвечает ровно одна запись. Связи между объектами относятся к типу «один к одному».





Рис. 1. ER-диаграмма предметной области




3. Объекты базы данных Microsoft Access



3.1 Таблицы



Средствами Microsoft Access созданы следующие таблицы: сотрудники, контактная информация, личная информация, образование, заработная плата, рабочее время.

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

Запустить Microsoft Access, выполнив соответствующую команду меню Пуск > Программы (Start > Programs).

В появившемся в области задач приложения окне Создание файл? (New File) в разделе Создание (New) щелкнуть на пункте Новая база данных (Blank Access Database). Откроется окно диалога Файл новой базы данных (File New Database).

Выбрать для размещения новой базы данных папку. В поле Имя файла (File Name) введите имя. Затем щелкните па кнопке Создать (Create).

Щелкнуть на кнопке Таблицы (Tables).

Чтобы запустить мастер создания таблиц, дважды щелкнуть на значке Создание таблицы с помощью мастера (Create Table By Using Wizard).

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

Выбрать положение переключателя Деловые (Business).

В списке Образцы таблиц (Sample Tables) выбрать необходимые пункты, которые будут являться названиями столбцов таблицы.

Щелкнуть на кнопке со стрелкой вправо, чтобы добавить выбранное поле в структуру создаваемой таблицы.

Щелкнуть на кнопке Далее (Next).

В поле второго окна мастера введите слово, которое будет играть роль имени таблицы. Затем щелкните на кнопке Далее.

11. В третьем окне мастера щелкните на кнопке Готово (Finish). Мастер сгенерирует таблицу и откроет ее в режиме ввода данных.

Если во втором окне осталось выбранным положение переключателя Microsoft Access автоматически определяет ключ (Yes, Set A Primary Key For Me), Access добавляет в таблицу дополнительное ключевое поле, которое играет роль уникального идентификатора записей.

Далее таблица заполняется самостоятельно.

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

Щелчком на кнопке Окно базы данных (Database Window) переключиться на список таблиц базы данных.

Дважды щелкнуть на значке Создание таблицы в режиме конструктора (Create Table In Design View). Окно конструктора состоит из двух частей. В верхней отображается список полей таблицы, а в нижней — свойства выделенного поля.

Введите слово, которое будет играть роль названия нового поля.

Щелкните на ячейке Тип данных (Data Type) первой строки списка полей. Здесь необходимо выбрать тип поля, который определяет структуру и размер данных. Далее таким же образом заполняются все поля таблицы.

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

Добавляем поле Ключ и назначаем ему тип Счетчик (AutoNumber). Такой тип данных избавляет пользователя от необходимости ввода значений ключевого поля и инициирует автоматическую генерацию уникальных значений. Сохраняя активной строку Ключ, щелкните на кнопке Ключевое поле (Primary Key).

На кнопке этой строки появится значок ключа, показывающий особый статус поля.

Щелкнуть на кнопке закрытия окна конструктора.

Access спросит о необходимости сохранения структуры таблицы. В ответ щелкнуть на кнопке Да.

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



















Связь таблиц

Для создания связи между таблицами, выполняем следующие действия:

1. Поместить указатель мыши на пункт Код сотрудника таблицы Сотрудники.

Нажмите кнопку мыши и перетащите указатель на поле Код сотрудника Образование.

В открывшемся окне диалога щелкнуть на кнопке Создать. Связь появится автоматически.

4. Установить флажок «Обеспечение целостности данных». Этот режим не позволит Access оставлять в таблице Образование записи, для которых нельзя подобрать запись таблицы Сотрудники с подходящим значением поля Код сотрудника.

5. Щелкнуть на кнопке ОК. Закрыть окно Схема данных.



3.2 Запросы



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

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

В нашем случае условие отбора инициирует получение из таблицы Сотрудник полей Фамилия и Должность, а также поля Образование и № диплома таблицы Образование. Таблицы Сотрудники и Образование связаны между собой через поле Код сотрудника, при этом Сотрудники является главной таблицей, а Образование — подчиненной. В поле условие (в режиме конструктора) ставим условие «высшее» в столбце образование. В результате данного запроса выводятся фамилии сотрудников имеющих высшее образование.

Запрос «сотрудники с 40-часовой рабочей неделей» формируется следующим образом. В режиме конструктора выбираем таблицы «сотрудники» и «рабочее время». Из таблицы «сотрудники» выбираем поля «код сотрудника», «фамилия», «должность». Из таблицы «рабочее время» - поле «количество часов». В условии задаем «40». В результате данного запроса выводится список сотрудников работавших по 40 часов в 1 неделе месяца.

Так же формируем статистический запрос «средняя заработная плата», который рассчитывает размер средней заработной платы по организации. Для этого в режиме конструктора выбираем таблицу «зарплата» переносим один параметр «зарплата» и вводим дополнительное поле групповая операция и выбираем значение Аvg. Сохраняем запрос. Расчет средней зарплаты происходит автоматически. Другие доступные групповые операции представлены в таблице 1.




Таблица 1. Групповые операции

Название

Функция

Условие(Where) 

 Режим задания условия отбора для поля, но которому не выполняется группировка. Access автоматически делает такое поле скрытым 

Выражение (Expression) 

Вычисляемое поле, значение которого рассчитывается по сложной формуле 

Group By 

 Поле, определяющее группу записей, по которой вычисляются статистические параметры. К одной группе относятся все записи, для которых значения поля с режимом Group By (Группировка) одинаковы 

 Last 

Последнее значение в группе 

 First 

Первое значение в группе 

 Var 

Вариация значений поля 

StDev 

 Стандартное отклонение величин ноля от среднего 

Count 

Количество записей, соответствующее ноле которых не содержит величины Null 

 Мах 

Максимальное значение 

Min 

Минимальное значение 

 Avg 

Среднее значение поля 

Sum 

 Сумма значений поля по всем записям 



Результат запросов в базе данных представлен ниже.











3.3 Создание форм



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

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

При открытии конструктора форм на экране появляется панель элементов. С помощью кнопок панели элементов в форму можно добавлять различные объекты, типы которых перечислены в таблице 2. Элементы управления форм и отчетов сходны между собой, поэтому такая же панель элементов имеется и в конструкторе отчетов.



Таблица 2. Элементы управления форм и отчетов

Название

Назначение

Надпись (Label)

Надписи создаются автоматически вместе с элементами типа текстовое поле, поле со списком и т. п. Они разъясняют смысл поля ввода. Дополнительные надписи могут использоваться для заголовков и пояснений 

Поле (Text Box) 

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

Группа переключателей (Option Group)

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

Выключатель (Toggle Button)

Позволяет вводить информацию типа да/нет. Величине «да» или «истина» соответствует утопленное положение выключателя 

Переключатель (Option Button) 

Элемент группы переключателей, в которой может быть отмечен только один из них (его кружок выглядит зачерненным) 

Флажок (Check Box) 

Предназначен для представления полей типа да/нет. Отмеченный квадратик соответствует величине «да», а пустой — «нет» 

Поле со списком (Combo Box)

Разрешает как непосредственный ввод значения в поле, так и его выбор в раскрывающемся списке предопределенных значений 

Список (List Box) 

Позволяет выбирать данные из набора пунктов и не разрешает непосредственный ввод значений 

Кнопка (Command Button)

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



Рисунок 

Рисунок любого графического формата с рамкой 

Свободная рамка объекта (Unbound Object Frame) 

Объект OLE, не связанный ни с каким источником данных 

Присоединенная рамка объекта (Bound Object Frame) 

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

 Разрыв страницы (Page Break)

Линия, по которой формируется перевод страницы при выводе формы или отчета на принтер 

 Набор вкладок (Tab Control)

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

 Подчиненная форма/отчет(Subform/Subreport)

Вставляет в форму (или отчет) область

с другой формой (или отчетом), связанной

с главной 

Линия (Line) 

Добавляет прямую линию

Я Прямоугольник (Rectangle)

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

 Другие элементы (More Controls) 

Открывает меню с элементами управления, не вошедшими в панель элементов 



В нашем случае создаем две формы: «сотрудники» и «личные данные сотрудников», которые содержат информацию из соответствующих таблиц. Форма «сотрудники» создана в режиме мастера. Форма «личные данные сотрудников» - в режиме конструктора.



3.4 Создание отчетов



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

Чтобы облегчить работу пользователя, в Access имеется специальный мастер, который при недостатке времени позволяет быстро создавать довольно привлекательные отчеты. С помощью мастера создаем отчет «основная информация о сотрудниках». В нем содержится информация из нескольких таблиц. Из таблицы «сотрудники» переносим в отчет следующие данные: код сотрудника, номер паспорта, фамилия, имя, должность. Из таблицы «контактная информация» - адрес. Из таблицы «личная информация» - дата рождения. Из таблицы «образование» - столбец образование. Формируем отчет. Так же в качестве отчета сохраняем связи между таблицами.




Заключение



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

Средствами СУБД Microsoft Access создан удобный пользовательский интерфейс. Приложение позволяет решать все задачи, сформулированные в задании на курсовую работу. Это позволяет сделать вывод, что задание выполнено полностью.




Список использованной литературы



Конноли Т., Бегг К., Страчан А. Базы данных: проектирование, реализация и сопровождение. — М.: Вильямс, 2000. — 1120 с.

Хансен Г., Хансен Дж. Базы данных: разработка и управление. — М.: БИНОМ, 1999. — 704 с.

Дейт К. Дж. Введение в системы баз данных. — К.; М.; СПб.: Издательский дом «Вильямс», 1999. — 848 с.

Праг К. Н., Ирвин М. Р. Access 2000. Библия пользователя. — М.: Вильямс, 2000. — 1040 с.

Microsoft Access 2003. Русская версия. Шаг за шагом. – М.: ЭКОМ, 2006

Симонович С.В., Евсеев Г.А., Алексеев А.Г. Специальная информатика. Учебное пособие. – М.: АСТ-Пресс, 1998.- 480 с.

Гончаров А.Ю. - Access 2003. Самоучитель с примерами. www.natahaus.ru







2