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

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



-07-30', 'YYYY-MM-DD'), 4, 3);INTO Worker VALUES ('Ешеренев П. Г.','MB153728, Белопольским ГРО УМВД 28.08.74, прописка - г. Ворожба', 'Вахтер', TO_DATE ('2009-05-20', 'YYYY-MM-DD'), 5, 3);INTO Worker VALUES ('Соломкина А. А.','MB635217, Сумским ГРО УМВД 25.06.71, прописка - г. Сумы', 'Вахтер', TO_DATE ('2004-06-18', 'YYYY-MM-DD'), 6, 3);INTO Worker VALUES ('Масько П. Л.','MB762534, Ахтырским ГРО УМВД 20.09.95, прописка - г. Ахтырка', 'Менеджер', TO_DATE ('2007-10-29', 'YYYY-MM-DD'), 7, 4);INTO Worker VALUES ('Кучер Ф. Г.','MB453277, Харьковским ГРО УМВД 10.09.96, прописка - г. Харьков', 'Тестер', TO_DATE ('2001-10-22', 'YYYY-MM-DD'), 8, 5);INTO Worker VALUES ('Шинкарюк Л. Д.','MB256346, Киевским ГРО УМВД 05.06.92, прописка - г. Киев', 'Тестер', TO_DATE ('2002-11-28', 'YYYY-MM-DD'), 9, 5);INTO Worker VALUES ('Воронная Н. Д.','MB736488, Сумским ГРО УМВД 20.09.98, прописка - г. Сумы', 'Тестер', TO_DATE ('2003-12-01', 'YYYY-MM-DD'), 10, 5);

-List_of_membINTO List_of_memb VALUES (1, 'Бухгалтер', 2000, 1);INTO List_of_memb VALUES (2, 'Менеджер o/к', 1800, 2);INTO List_of_memb VALUES (3, 'Вахтер', 800, 3);INTO List_of_memb VALUES (4, 'Менеджер т/o', 2500, 4);INTO List_of_memb VALUES (5, 'Тестер', 2300, 5);

-WorkINTO Work VALUES (null, 2000, 'на предпр.', 'почасовая', 1);INTO Work VALUES (null, 2000, 'на предпр.', 'почасовая', 2);INTO Work VALUES (null, 1800, 'на предпр.', 'почасовая', 3);INTO Work VALUES (null, 800, 'на предпр.', 'почасовая', 4);INTO Work VALUES (null, 800, 'на предпр.', 'почасовая', 5);INTO Work VALUES (null, 800, 'на предпр.', 'почасовая', 6);INTO Work VALUES (null, 2500, 'на предпр.', 'почасовая', 7); INTO Work VALUES ('тестирование офисного прогр. обесп.', 2300, 'на предпр.', 'фиксир.', 8);

INSERT INTO Work VALUES ('тестирование пользовательского прогр. обесп.', 2300, 'на дому', 'фиксир.', 9);

INSERT INTO Work VALUES ('тестирование системного прогр. обесп.', 2300, 'на предпр.', 'фиксир.', 10);

--Contact_infoINTO Contact_info VALUES ('(0542)736-839', 'ул. Ахтырская, 3', 'jhsdfjskl@yandex.ru', null, 1);

INSERT INTO Contact_info VALUES ('(0542)745-859', 'ул. Кирова, 32', '123mjhj@yandex.ru', null, 2);

INSERT INTO Contact_info VALUES ('(05456)5-36-34', 'ул. Ленина, 257', 'loigerg@mail.ru', 'ICQ - 456789', 3);

INSERT INTO Contact_info VALUES ('(0542)674-256', 'ул. Октября, 3', 'vcmhdl@bk.ru', null, 4);

INSERT INTO Contact_info VALUES ('(05423)7-36-89', 'ул. Колпака, 34', 'oehcpspss@yandex.ru', null, 5);INTO Contact_info VALUES ('(0542)648-820', 'ул. Харьковска, 23', 'juise@yandex.ru', null, 6);

INSERT INTO Contact_info VALUES ('(05446)2-49-88', 'ул. Шевченка, 2', 'lidufklasjd@mail.ru', null, 7);

INSERT INTO Contact_info VALUES ('(065)473-68-39', 'ул. Курская, 18', 'isdkasd@yandex.ru', null, 8);

INSERT INTO Contact_info VALUES ('(044)273-61-21', 'ул. О.Вишни, 78', 'lskdjflskdj@yandex.ru', null, 9);INTO Contact_info VALUES ('(0542)836-358', 'ул. Береговая, 104', 'kudfkjdkdldd@yandex.ru', null, 10);

Department

Worker

List_of_memb

проектирование база данных логический метамодель

Contact_info

Создание выборок

1.SELECT fio, spesiallity, EXTRACT (YEAR FROM SYSDATE) - EXTRACT (YEAR FROM years) AS stazh

FROM Worker; -- выводит сотрудников, их специальности и стаж работы (использование функции - EXTRACT)

2.SELECT w.fio, w.spesiallity, w.pasport, l.salary

FROM Worker w, List_of_memb l

WHERE w.ID_s=l.ID_s AND w.nomer=l.nomer; -- выводит ФИО, специальность, паспортные данные и заработную плату сотрудников (выборка)

3.SELECT DISTINCT post

FROM List_of_memb; -- выводит уникальные записи должностей штатного расписания (проекция)

4.SELECT d. nomer, w.ID_s, w.fio

FROM Worker w, Department d

WHERE w. nomer =d. nomer; -- выводит номера сотрудников и их ФИО с учетом номеров отделов (пересечение)

5.SELECT salary

FROM List_of_memb

WHERE salary NOT IN (SELECT salary FROM List_of_memb WHERE salary<2000); -- выводит ставки по заработной плате выше 2000 грн. (разность)

Мапирование реляционной модели в метамодель

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

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

.Каждая сущность, информация о которой хранится в БД, - это объект.

.Каждый объект уникален в пределах БД и имеет уникальный идентификатор.

.Объект имеет свойства (строковые, числовые, временные, перечислимые), которые описывают атрибуты сущности.

.Объекты могут быть связаны между собой произвольным образом. Связь характеризуется связанными объектами и типом связи.

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

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

Построение диаграммы классов для метамодели

Исходя из описанных выше утверждений, была спроектирована диаграмма классов, которая удовлетворяет этим тезисам (рис. 4.1).

Как видно из диаграммы классов она состоит из 4 классов: Типы, Объекты, Атрибуты и Параметры. В каждом классе, кроме класса Параметры, имеется 3 атрибута, из которых один - это идентификатор данного класса. В классы Объекты и Атрибуты мигрирует идентификатор из класса Типы. Класс Параметры не имеет своего идентификатора, но в него мигрируют идентификаторы из классов Атрибуты и Объекты.

Рисунок 4.1 - Диаграмма классов

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

Отношения Типы, Объекты, Атрибуты и Параметры, выявленные на этапе построения концептуальной модели характеризуются следующими атрибутами (табл. 3.1).

Таблица 3.1 Атрибуты отношения Типы

АтрибутОписаниеID_типа_объектаПервичный ключНазваниеНазвани