Проектирование информационной системы предприятия ООО "С нами выгодно"
Разработка базы данных информационной системы предприятия. Хранение информации о проведенных мероприятиях, его стоимости, дате и месте проведения. Использование программного продукта Microsoft SQL Server 2008 R2. Формирование информационных запросов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 21.02.2016 |
Размер файла | 508,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://allbest.ru
Введение
В данном курсовом проекте рассматривается предприятие ООО «С нами выгодно». Для того, чтобы это предприятие могло отслеживать информацию о проводимых в нем мероприятиях, необходимо решить задачи такие как: хранение информации о сотрудниках, хранение информации об участниках мероприятия, о самом мероприятии, о стоимости мероприятия, а так же местах проведения, времени и дате проведения мероприятия.
Всегда было очень актуально для каждой организации проведение мероприятий, таких как конференции, семинары и др. Целью проведения подобных мероприятий является решение определенных вопросов, касающихся деятельности предприятия. Так как объем информации необходимый для проведения того или иного мероприятия очень велик и хранить ее в бумажном виде не целесообразно и неудобно, необходимо создать базу данных, которая будет быстро находить и обрабатывать нужную информацию.
В данном курсовом проекте основной целью является разработка такой базы данных, которая необходима для хранения информации о проведенных и предстоящих мероприятиях организации, включающей в себя информацию о сотрудниках и участниках мероприятия, его стоимости, дате и месте проведения и др. База данных должна обеспечить оперативную выдачу фактической информации, которую пользователь запрашивает в информационном запросе.
Также целью данного курсового проекта является закрепление навыков и знаний в проектировании баз данных.
Для создания базы данных будет использован программный продукт Microsoft SQL Server 2008 R2.
1. Проектирование базы данных
информация база данных
1.1 Описание предприятия/проекта
Проведение мероприятий сейчас один самых популярных способов решения, как внутриорганизационных вопросов, так и вопросов, касающихся внешней политики организации. Это могут быть вопросы, связанные с исследованием новых рынков сбыта продукции организации, новых рынков предоставления услуг населению, также это могут быть вопросы, касающиеся рекламной компании предприятия, оптимизации определенных бизнес-процессов.
Определенные сотрудники предприятия ООО «С нами выгодно» занимаются организацией и проведением мероприятий компании. Для ускорения процесса организации и более качественного проведения мероприятия, информация о нем должна храниться в базе данных.
Для проведения любого мероприятия компании необходимо поставить цель его проведения и назначить человека (сотрудника), который будет заниматься его организацией и проведением, собирать всю необходимую для этого информацию и вносить ее в базу данных для хранения и обработки.
В качестве объекта практического исследования возьмём бизнес-процесс организации и проведения мероприятия сотрудником компании ООО «С нами выгодно».
1.2 Описание организационной структуры предприятия/проекта
Предприятием ООО «С нами выгодно» руководит директор, которому подчиняются сотрудники отдела снабжения, отдела продаж, отдела закупок, складского хозяйства, отдела бухгалтерии и отдела безопасности, также сотрудники рекламного отдела.
Для того чтобы показать организационную структуру предприятия ниже приведен её рисунок (см. Рисунок 1).
Рисунок 1 Организационная структура
Каждый отдел имеет своего начальника: в отделе продаж - менеджер по продажам, в бухгалтерии это главный бухгалтер, в рекламном отделе - специалист по рекламе, в отделе снабжения - менеджер по снабжению, а в отделе закупок - менеджер по закупкам, в складском хозяйстве - заведующий складом, в отделе безопасности - старший сотрудник охраны. У каждого из этих начальников в подчинении находятся сотрудники. Все сотрудник выполняет свои определенные функции в работе организации.
1.3 Описание бизнес-процесса
Чтобы в базе компании хранилась информация о проведенном или предстоящем мероприятии, сотруднику компании, который, в тоже время, является руководителем одного из структурных подразделений, необходимо собрать всю необходимую информацию.
В первую очередь, сотруднику компании (руководителю структурного подразделения) необходимо предоставить данные о себе: свои ФИО, телефон контактный; - для того, чтобы в базе хранилась информация о лице, который руководил (будет руководить) мероприятием и несет полную ответственность за его проведение. Также сотруднику необходимо предоставить информацию о том, к какому именно подразделению он относится. Эта информация также будет отражена в базе данных компании.
Далее сотрудник компании определяет список участников мероприятия, данные о которых также следует внести в базу. Сотруднику необходимо собрать информацию о том, как зовут каждого отдельного участника мероприятия, его контактный телефон и должность, в который находится участник на данный момент.
Далее сотрудник определяет цель проведения мероприятия, на которую он и каждый из участников в ходе проведения мероприятия будут опираться. Целью мероприятия может быть продвижение своих товаров/услуг на рынке, оптимизация определенных бизнес-процессов организации и масса других вопросов, решение которых будет целью проведения мероприятия.
Кроме того, сотруднику необходима информация о месте проведения самого мероприятия. Необходимы сведения о том, в каком городе будет оно происходить и по какому адресу (улица, номер дома).
Дата проведения мероприятия также является важной информацией, который сотрудник должен будет ввести в базу данных. Для этого нужно будет точно указать день, месяц и год проведения мероприятия.
И в завершении, руководитель мероприятия должен собрать информацию и указать ее в базе данных компании о том, каким типом мероприятия является то, что он проводит (конференция, семинар и др.), необходима информация о продолжительности самого мероприятия (для этого следует указать время начала мероприятия и время его окончания), также необходима информация о стоимости проведения мероприятия (в рублях).
1.4 Концептуальная модель
Далее представлена концептуальная модель базы данных по ведению информации о мероприятиях компании ООО «С нами выгодно» (см. Рисунок 2).
Рисунок 2 Концептуальная модель
На данной модели можно проследить взаимосвязи объектных множеств, с помощью которых осуществляется работа базы данных.
Целью базы данных является ввод информации о сотрудниках, участниках, дате и месте проведения, а также стоимости мероприятия. Вывод запрашиваемых данных в удобной для пользователя форме.
1.5 Нормализация базы данных
Далее представлена таблица «Сотрудник». Данная таблица содержит информацию о коде сотрудника, его фамилии, имени и отчестве, а также его телефоне (см. Таблица 1).
Таблица 1. Сотрудник
Код сотрудника |
ФИО сотрудника |
Телефон сотрудника |
|
101 |
Човгун Роман Олегович |
89139037850 |
|
102 |
Мозголина Анна Александровна |
89134886781 |
|
103 |
Багдасарян София Эдуардовна |
89520000000 |
|
104 |
Иванов Антон Александрович |
89230000500 |
|
105 |
Силина Ксения Александровна |
89230010500 |
|
106 |
Сазонов Андрей Юрьевич |
89830000000 |
|
107 |
Клименков Эльдар Арнольдович |
89520001111 |
|
108 |
Козлов Дмитрий Геннадьевич |
89139139113 |
Далее представлена таблица «Подразделение». Данная таблица содержит информацию о коде подразделения и наименовании подразделения (см. Таблица 2).
Таблица 2. Подразделение
Код подразделения |
Наименование подразделения |
|
1001 |
Отдел продаж |
|
1002 |
Отдел снабжения |
|
1003 |
Отдел закупок |
|
1004 |
Складское хозяйство |
|
1005 |
Отдел бухгалтерии |
|
1006 |
Отдел безопасности |
Далее представлена таблица «Сотрудник - Подразделение», содержащая информацию о коде сотрудник-подразделение, коде сотрудника и коде подразделения. Данная таблица также является связующей. Она связывает таблицу «Сотрудник» и таблицу «Подразделение» (см. Таблица 3).
Таблица 3. Сотрудник - Подразделение
Код сотрудник -подразделение |
Код сотрудника |
Код подразделения |
|
11001 |
102 |
1001 |
|
11002 |
101 |
1002 |
|
11003 |
103 |
1005 |
|
11004 |
104 |
1002 |
|
11005 |
105 |
1004 |
|
11006 |
106 |
1003 |
|
11007 |
107 |
1001 |
|
11008 |
108 |
1002 |
Далее представлена таблица «Сотрудник - Мероприятие», содержащая информацию о коде сотрудник-мероприятие, коде сотрудника и коде мероприятия. Данная таблица также является связующей. Она связывает таблицу «Сотрудник» и таблицу «Мероприятие» (см. Таблица 4).
Таблица 4. Сотрудник - Мероприятие
Код сотрудник -мероприятие |
Код сотрудника |
Код мероприятия |
|
501 |
101 |
50001 |
|
502 |
102 |
50002 |
|
503 |
103 |
50003 |
|
504 |
104 |
50004 |
|
505 |
105 |
50005 |
|
506 |
106 |
50006 |
Далее представлена таблица «Дата проведения», содержащая информацию о коде даты проведения, дне, месяце и годе проведения мероприятия (см. Таблица 5).
Таблица 5. Дата проведения
Код дата проведения |
День |
Месяц |
Год |
|
3001 |
01 |
01 |
2012 |
|
3002 |
15 |
10 |
2012 |
|
3003 |
01 |
10 |
2012 |
|
3004 |
12 |
10 |
2012 |
|
3005 |
01 |
11 |
2012 |
|
3006 |
04 |
12 |
2012 |
Далее представлена таблица «Дата проведения - Мероприятие», содержащая информацию о коде дата проведения - мероприятие, коде даты проведения и коде мероприятия. Данная таблица также является связующей. Она связывает таблицу «Дата проведения» и таблицу «Мероприятие» (см. Таблица 6).
Таблица 6. Дата проведения - Мероприятие
Код дата проведения - мероприятия |
Код дата проведения |
Код мероприятия |
|
2001 |
3001 |
50001 |
|
2002 |
3002 |
50002 |
|
2003 |
3003 |
50003 |
|
2004 |
3004 |
50004 |
|
2005 |
3005 |
50005 |
|
2006 |
3006 |
50006 |
Далее представлена таблица «Место проведения», содержащая информацию о коде места проведения, городе, улице и номере дома (см. Таблица 7).
Таблица 7. Место проведения
Код место проведения |
Город |
Улица |
Номер дома |
|
4001 |
Новосибирск |
Троллейная |
22 |
|
4002 |
Новосибирск |
Жуковского |
107 |
|
4003 |
Новосибирск |
Каменская |
56 |
|
4004 |
Новосибирск |
Ломоносова |
56 |
|
4005 |
Бердск |
Ленина |
1 |
|
4006 |
Искитим |
Безымянная |
100 |
Далее представлена таблица «Место проведения - Мероприятие», содержащая информацию о коде сотрудника, фамилии, имени, отчестве и его телефоне. Данная таблица также является связующей. Она связывает таблицу «Место проведения» и таблицу «Мероприятие» (см. Таблица 8).
Таблица 8. Место проведения - Мероприятие
Код место проведения -мероприятие |
Код место проведения |
Код мероприятия |
|
5001 |
4001 |
50001 |
|
5002 |
4002 |
50002 |
|
5003 |
4003 |
50003 |
|
5004 |
4004 |
50004 |
|
5005 |
4005 |
50005 |
|
5006 |
4006 |
50006 |
Далее представлена таблица «Участник», содержащая информацию о коде участника, фамилии, имени, отчестве, его телефоне и должности (см. Таблица 9).
Таблица 9. Участник
Код участника |
ФИО участника |
Телефон участника |
Должность участника |
|
6001 |
Подголин Дмитрий Александрович |
89137500135 |
Менеджер по продажам |
|
6002 |
Комаров Алексей Валерьевич |
89130000000 |
Менеджер по закупкам |
|
6003 |
Румянкин Александр Александрович |
89134000000 |
Менеджер по снабжению |
|
6004 |
Комарова Анастасия Юрьевна |
89130001111 |
Заведующий складом |
|
6005 |
Поляков Сергей Леонидович |
89239990011 |
Главный бухгалтер |
|
6006 |
Ананьев Юрий Михайлович |
89990009900 |
Охранник |
Далее представлена таблица «Цель», содержащая информацию о коде цели и ее наименовании (см. Таблица 10).
Таблица 10. Цель
Далее представлена таблица «Участник - Цель», содержащая информацию о коде участник-цель, коде участника и коде цели (см. Таблица 11).
Таблица 11. Участник - цель
Код участник - цель |
Код участника |
Код цели |
|
20500 |
6001 |
20001 |
|
20501 |
6002 |
20002 |
|
20502 |
6003 |
20003 |
|
20503 |
6004 |
20004 |
|
20504 |
6005 |
20005 |
|
20505 |
6006 |
20006 |
Далее представлена таблица «Мероприятие», содержащая информацию о коде мероприятия, коде участника, коде цели, типе мероприятия и стоимости мероприятия (см. Таблица 12).
Таблица 12. Мероприятие
Код мероприятия |
Код участника |
Код цели |
Тип мероприятия |
Стоимость мероприятия |
|
50001 |
6001 |
20001 |
Конференция |
100000 |
|
50002 |
6002 |
20002 |
Семинар |
200000 |
|
50003 |
6003 |
20003 |
Конференция |
150000 |
|
50004 |
6004 |
20004 |
Конференция |
300000 |
|
50005 |
6005 |
20005 |
Конференция |
100000 |
|
50006 |
6006 |
20006 |
Семинар |
50000 |
Далее представлена таблица «Время проведения», содержащая информацию о коде времени проведения, коде мероприятия, времени начала и окончания (см. Таблица 13).
Таблица 13. Время проведения
Код времени проведения |
Код мероприятия |
Время начала |
Время конца |
|
40001 |
50001 |
16.00 |
22.00 |
|
40002 |
50002 |
10.00 |
18.00 |
|
40003 |
50003 |
05.00 |
10.00 |
|
40004 |
50004 |
15.00 |
20.00 |
|
40005 |
50005 |
16.00 |
21.00 |
|
40006 |
50006 |
16.30 |
18.00 |
Данные таблицы полностью отображают информационную составляющую базы данных о мероприятиях организации. В них есть вся необходимая информация для дальнейшей работы.
2. Глава. Разработка базы данных
2.1 Создание объектов базы данных
Далее представлен код создания базы данных:
--создание базы данных Мероприятия
create database activiti
--определяем используемую БД
use activiti
Рисунок 3 Созданная БД
--создание таблицы Сотрудник (см.Рисунок 4)
create table worker(worker_ID int primary key not null, fioworker varchar (50) not null, phoneworker bigint not null check (phoneworker like('_______') or phoneworker like('___________')))
Рисунок 4 Созданная таблица Сотрудник
--заполнение таблицы Сотрудник (см. Рисунок 5)
insert into [worker]values(101,'Човгун Роман Олегович', 89139037850)
insert into [worker]values(102,'Мозголина Анна Александровна',89134886781)
insert into [worker]values(103,'Багдасарян София Эдуардовна',89520000000)
insert into [worker]values(104,'Иванов Антон Александрович',89230000500)
insert into [worker]values(105,'Силина Ксения Александровна',89230010500)
insert into [worker]values(106,'Сазонов Андрей Юрьевич',89830000000)
insert into [worker]values(107,'Клименков Эльдар Арнольдович',89520001111)
insert into [worker]values(108,'Козлов Дмитрий Геннадьевич',89139139113)
Рисунок 5 Заполненная таблица Сотрудник
--создание таблицы Подразделение (см.Рисунок 6)
create table subdivision(subdivision_ID int primary key not null, subdivisionname varchar (30) not null)
Рисунок 6 Созданная таблица Подразделение
--заполнение таблицы Подразделение (см.Рисунок 7)
insert into [subdivision]values(1001,'Отдел продаж')
insert into [subdivision]values(1002,'Отдел снабжения')
insert into [subdivision]values(1003,'Отдел закупок')
insert into [subdivision]values(1004,'Складское хозяйство')
insert into [subdivision]values(1005,'Отдел бухгалтерии')
insert into [subdivision]values(1006,'Отдел безопасности')
Рисунок 7 Заполненная таблица Подразделение
--создание таблицы Сотрудник-Подразделение (см.Рисунок 8)
create table workersubdivision(workersubdivision_ID int primary key not null, worker_ID int foreign key references worker(worker_ID) not null,subdivision_ID int foreign key references subdivision(subdivision_ID) not null)
Рисунок 8 Созданная таблица Сотрудник - Подразделение
--заполнение таблицы Сотрудник-Подразделение (см.Рисунок 9)
insert into [workersubdivision]values(11001,102,1001)
insert into [workersubdivision]values(11002,101,1002)
insert into [workersubdivision]values(11003, 103,1005)
insert into [workersubdivision]values(11004,104,1002)
insert into [workersubdivision]values(11005,105,1004)
insert into [workersubdivision]values(11006,106,1003)
insert into [workersubdivision]values(11007,107,1001)
insert into [workersubdivision]values(11008,108,1002)
Рисунок 9 Заполненная таблица Сотрудник - Подразделение
--создание таблицы Дата проведения (см.Рисунок 10)
create table data(data_ID int primary key not null, den int not null check(den>0 and den<=31), mesiac int not null check(mesiac>0 and mesiac<=12), god int not null check(god>1900 and god<=2090))
Рисунок 10 Созданная таблица Дата проведения
--заполнение таблицы Дата проведения (см.Рисунок 11)
insert into [data] values (3001,01,01,2012)
insert into [data] values (3002,15,10,2012)
insert into [data] values (3003,01,10,2012)
insert into [data] values (3004,12,10,2012)
insert into [data] values (3005,01,11,2012)
insert into [data] values (3006,04,12,2012)
Рисунок 11 Заполненная таблица Дата проведения
--создание таблицы Место проведения (см.Рисунок 12)
create table place(place_ID int primary key not null, city varchar(30) not null, street varchar (50) not null, number int not null)
Рисунок 12 Созданная таблица Место проведения
--заполненная таблица Место проведения (см.Рисунок 13)
insert into [place] values (4001,'Новосибирск','Троллейная',22)
insert into [place] values (4002,'Новосибирск','Жуковского',107)
insert into [place] values (4003,'Новосибирск','Каменская',56)
insert into [place] values (4004,'Новосибирск','Ломоносова',56)
insert into [place] values (4005,'Бердск','Ленина',1)
insert into [place] values (4006,'Искитим','Безымянная',100)
Рисунок 13 Заполненная таблица Место проведения--создание таблицы Участник (см.Рисунок 14)
create table member(member_ID int primary key not null, fiomember varchar(50) not null, phonemember bigint not null check (phonemember like('_______') or phonemember like('___________')), position varchar(40) not null)
Рисунок 14 Созданная таблица Участник
--заполнение таблицы Участник (см.Рисунок 15)
insert into [member] values (6001,'Подголин Дмитрий Александрович',89137500135,'Менеджер по продажам')
insert into [member] values (6002,'Комаров Алексей Валерьевич',89130000000,'Менеджер по закупкам')
insert into [member] values (6003,'Румянкин Александр Александрович',89134000000,'Менеджер по снабжению')
insert into [member] values (6004,'Комарова Анастасия Юрьевна',89130001111,'Заведующий складом')
insert into [member] values (6005,'Поляков Сергей Леонидович',89239990011,'Главный бухгалтер')
insert into [member] values (6006,'Ананьев Юрий Михайлович',89990009900,'Охранник')
Рисунок 15 Заполненная таблица Участник --создание таблицы Цель (см.Рисунок 16)
create table purpose(purpose_ID int primary key not null, namepurpose varchar(80) not null)
Рисунок 16 Созданная таблица Цель
--заполнение таблицы Цель (см.Рисунок 17)
insert into [purpose] values (20001,'Исследование новых рынков сбыта продукции')
insert into [purpose] values (20002,'Оптимизация деятельности отдела закупок')
insert into [purpose] values (20003,'Исследование более выгодных условий доставки продукции')
insert into [purpose] values (20004,'Нахождение новых способов ведения складского хозяйства')
insert into [purpose] values (20005,'Нахождение новых способов ведения бухгалтерского хозяйства')
insert into [purpose] values (20006,'Оптимизация охранной деятельности')
Рисунок 17 Заполненная таблица Цель
--создание таблицы Участник-Цель (см.Рисунок 18)
create table purposemember(purposemember_ID int primary key not null, member_ID int foreign key references member(member_ID) not null,purpose_ID int foreign key references purpose(purpose_ID) not null)
Рисунок 18 Созданная таблица Участник-Цель
--заполнение таблицы Участник-Цель (см.Рисунок 19)
insert into [purposemember] values (20500,6001,20001)
insert into [purposemember] values (20501,6002,20002)
insert into [purposemember] values (20502,6003,20003)
insert into [purposemember] values (20503,6004,20004)
insert into [purposemember] values (20504,6005,20005)
insert into [purposemember] values (20505,6006,20006)
Рисунок 19 Заполненная таблица Участник-Цель
--создание таблицы Мероприятие (см.Рисунок 20)
create table meropriyatie(meropriyatie_ID int primary key not null, member_ID int foreign key references member(member_ID) not null,purpose_ID int foreign key references purpose(purpose_ID) not null, tip varchar(25) not null, stoimost money not null)
Рисунок 20 Созданная таблица Мероприятие
--заполнение таблицы Мероприятие (см.Рисунок 21)
insert into [meropriyatie] values (50001,6001,20001,'Конференция',100000)
insert into [meropriyatie] values (50002,6002,20002,'Семинар',200000)
insert into [meropriyatie] values (50003,6003,20003,'Конференция',150000)
insert into [meropriyatie] values (50004,6004,20004,'Конференция',300000)
insert into [meropriyatie] values (50005,6005,20005,'Конференция', 100000)
insert into [meropriyatie] values (50006,6006,20006,'Семинар',50000)
Рисунок 21 Заполненная таблица Мероприятие
--создание таблицы Дата мероприятия - Мероприятие (см.Рисунок 22)
create table datameropriyatie(datameropriyatie_ID int primary key not null, data_ID int foreign key references data(data_ID) not null, meropriyatie_ID int foreign key references meropriyatie(meropriyatie_ID) not null)
Рисунок 22 Созданная таблица Дата мероприятия - Мероприятие
--заполнение таблицы Дата мероприятия - Мероприятие (см.Рисунок 23) insert into [datameropriyatie] values (2001,3001,50001)
insert into [datameropriyatie] values (2002,3002,50002)
insert into [datameropriyatie] values (2003,3003,50003)
insert into [datameropriyatie] values (2004,3004,50004)
insert into [datameropriyatie] values (2005,3005,50005)
insert into [datameropriyatie] values (2006,3006,50006)
Рисунок 23 Заполненная таблица Дата проведения - Мероприятие
--создание таблицы Место проведения - Мероприятие (см.Рисунок 24)
create table placemeropriyatie(placemeropriyatie_ID int primary key not null, place_ID int foreign key references place(place_ID) not null, meropriyatie_ID int foreign key references meropriyatie(meropriyatie_ID) not null)
Рисунок 24 Созданная таблица Место проведения - Мероприятие
--заполнение таблицы Место проведения - Мероприятие (см.Рисунок 25)
insert into [placemeropriyatie] values (5001,4001,50001)
insert into [placemeropriyatie] values (5002,4002,50002)
insert into [placemeropriyatie] values (5003,4003,50003)
insert into [placemeropriyatie] values (5004,4004,50004)
insert into [placemeropriyatie] values (5005,4005,50005)
insert into [placemeropriyatie] values (5006,4006,50006)
Рисунок 25 Заполненная таблица Место проведения - Мероприятие
--создание таблицы Сотрудник-Мероприятие (см.Рисунок 26)
create table workermeropriyatie(workermeropriyatie_ID int primary key not null, worker_ID int foreign key references worker(worker_ID) not null, meropriyatie_ID int foreign key references meropriyatie(meropriyatie_ID) not null)
Рисунок 26 Созданная таблица Сотрудник - Мероприятие
--заполнение таблицы СОтрудник-Мероприятие (см.Рисунок 27)
insert into [workermeropriyatie] values (501,101,50001)
insert into [workermeropriyatie] values (502,102,50002)
insert into [workermeropriyatie] values (503,103,50003)
insert into [workermeropriyatie] values (504,104,50004)
insert into [workermeropriyatie] values (505,105,50005)
insert into [workermeropriyatie] values (506,106,50006)
Рисунок 27 Заполненная таблица Сотрудник-Мероприятие
--создание таблицы Время проведения (см.Рисунок 28)
create table timeofmerop(timeofmerop_ID int primary key not null, meropriyatie_ID int foreign key references meropriyatie(meropriyatie_ID) not null, nachalo time not null, okonchanie time not null)
Рисунок 28 Созданная таблица Время проведения
--заполнение таблицы Время проведения (см.Рисунок 29)
insert into [timeofmerop] values (40001,50001,'16:00','22:00')
insert into [timeofmerop] values (40002,50002,'10:00','18:00')
insert into [timeofmerop] values (40003,50003,'05:00','10:00')
insert into [timeofmerop] values (40004,50004,'15:00','20:00')
insert into [timeofmerop] values (40005,50005,'16:00','21:00')
insert into [timeofmerop] values (40006,50006,'16:30','18:00')
Рисунок 29 Заполненная таблица Время проведения
Правила
Правила - это объекты MS SQL Server, которые применяются для отдельных столбцов, для того, чтобы контролировать ввод данных в этот столбец.
--1.Создание правила на ограничение количество цифр в телефоне
1) check (phoneworker like('_______') or phoneworker like('___________'))
2) check (phonemember like('_______') or phonemember like('___________'))
--2.Создание правила на ограничение ввода данных в типе оплаты.
1) check(den>0 and den<=31)
2) check(mesiac>0 and mesiac<=12)
3) check(god>1900 and god<=2090)
2.2 Схема базы данных
На рисунке ниже представлена схема базы данных из Microsoft SQL (см. Рисунок 30).
Рисунок 30 Схема в Microsoft SQL
На данной схеме видны отношения и связи между таблицами и ключевые поля.
2.3 Разработка представлений
--1. Создание представления информация о должности участников (см. Рисунок 31)
create view posit as
select fiomember, position
from dbo.member
go
Рисунок 31 Представление Должность участников
--2. Создание представления информация Какой сотрудник в каком отделе работает (см. Рисунок 32)
create view otdel as
select fioworker, subdivisionname
from dbo.subdivision, dbo.workersubdivision, dbo.worker
where dbo.workersubdivision.worker_ID=dbo.worker.worker_ID and
dbo.workersubdivision.subdivision_ID=dbo.subdivision.subdivision_ID
go
Рисунок 32 Представление Какой сотрудник в каком отделе работает
--3. Создание представления информация о мероприятии (см. Рисунок 33)
create view meropr as
select fiomember, namepurpose, tip, stoimost
from dbo.meropriyatie, dbo.member, dbo.purpose
where dbo.meropriyatie.member_ID=dbo.member.member_ID and
dbo.meropriyatie.purpose_ID=dbo.purpose.purpose_ID
go
Рисунок 33 Представление Информация о мероприятии
Представления очень удобно использовать, чтобы не видеть коды участников, целей, отделов и должностей, а видеть только ту информацию по запросу, которая понятна и легко воспринимается.
3. Разработка запросов
3.1 Разработка простых запросов
--1.Запрос Показать все места проведения мероприятия в городе Новосибирск (см.Рисунок 34)
select *
from dbo.place
where city like ('Новосибирск')
Рисунок 34
--2.Запрос Показать всех сотрудников, у кого сотовый оператор МТС (913, 983) (см.Рисунок 35)
select *
from dbo.worker
where phoneworker like ('8913%') or phoneworker like ('8983%')
Рисунок 35
--3.Запрос Показать всех участников мероприятия в должности менеджер (см.Рисунок 36)
select *
from dbo.member
where position like ('Менеджер%')
Рисунок 36
--4.Запрос Показать всех сотрудников у кого вторая буква в фамилии О (см.Рисунок 37)
select *
from dbo.worker
where fioworker like ('_о%')
Рисунок 37
--5 Запрос Показать адреса домов на улице Троллейная в Новосибирске (см.Рисунок 38)
select *
from dbo.place
where street like ('Троллейная') and city like ('Новосибирск')
Рисунок 38
--6 Запрос Показать ФИО заведующего складом (см.Рисунок 39)
select fiomember
from dbo.member
where position like ('Заведующий складом')
Рисунок 39
--7 Запрос Показать код мероприятия, тип которого Конференция и Стоимость более 140000 (см.Рисунок 40)
select meropriyatie_ID, tip, stoimost
from dbo.meropriyatie
where tip like ('Конференция') and stoimost > 140000
Рисунок 40
--8 Запрос Показать код мероприятия, начавшегося ранее 15:00 (см.Рисунок 41)
select meropriyatie_ID, nachalo
from dbo.timeofmerop
where nachalo < '15:00:00'
Рисунок 41
--9 Запрос Наименования целей, связанных с бухгалтерией (см.Рисунок 42)
select namepurpose
from dbo.purpose
where namepurpose like ('%бухгалтер%')
Рисунок 42
--10 Запрос Показать сотрудников, чьи отчества Александровна (см.Рисунок 43)
select fioworker, phoneworker
from dbo.worker
where fioworker like ('%Александровна')
Рисунок 43
3.2 Разработка многотабличных запросов
--1 Запрос Показать всех сотрудников отдела продаж (см.Рисунок 44)
select fioworker,subdivisionname
from dbo.subdivision,dbo.worker,dbo.workersubdivision where dbo.workersubdivision.worker_ID=dbo.worker.worker_ID and dbo.workersubdivision.subdivision_ID=dbo.subdivision.subdivision_ID and subdivisionname like ('Отдел продаж')
Рисунок 44
--2 Запрос Показать коды мероприятий проводимых в октябре (см.Рисунок 45)
select dbo.meropriyatie.meropriyatie_ID, mesiac
from dbo.meropriyatie, dbo.data, dbo.datameropriyatie
where dbo.datameropriyatie.data_ID=dbo.data.data_ID and
dbo.datameropriyatie.meropriyatie_ID=dbo.meropriyatie.meropriyatie_ID and mesiac=10
Рисунок 45
--3 Запрос Выдать ФИО сотрудника проводящего мероприятие под кодом 50004 (см.Рисунок 46)
select fioworker, dbo.meropriyatie.meropriyatie_ID
from dbo.meropriyatie, dbo.worker, dbo.workermeropriyatie
where dbo.workermeropriyatie.worker_ID=dbo.worker.worker_ID and
dbo.workermeropriyatie.meropriyatie_ID=dbo.meropriyatie.meropriyatie_ID and dbo.meropriyatie.meropriyatie_ID=50004
Рисунок 46
--4. Запрос Выдать цель мероприятий стоимостью более 140000 (см.Рисунок 47)
select namepurpose, stoimost
from dbo.meropriyatie, dbo.purpose
where dbo.meropriyatie.purpose_ID=dbo.purpose.purpose_ID and stoimost > 140000
Рисунок 47
--5. Запрос Выдать список участников и их цели мероприятий (см.Рисунок 48)
select fiomember, namepurpose
from dbo.member, dbo.purpose, dbo.purposemember
where dbo.purposemember.member_ID=dbo.member.member_ID and
dbo.purposemember.purpose_ID=dbo.purpose.purpose_ID
Рисунок 48
--6. Запрос Выдать семинары, которые начинаются позже 16:00 (см.Рисунок 49)
select tip, nachalo
from dbo.timeofmerop, dbo.meropriyatie
where dbo.meropriyatie.meropriyatie_ID=dbo.timeofmerop.meropriyatie_ID and nachalo > '15:30' and tip like ('Семинар')
Рисунок 49
--7. Запрос Выдать ФИО участников семинаров (см.Рисунок 50)
select fiomember, tip
from dbo.meropriyatie,dbo.member
where dbo.meropriyatie.member_ID=dbo.member.member_ID and tip like ('Семинар')
Рисунок 50
--8. Запрос Выдать мероприятие, которое проводила Багдасарян (см.Рисунок 51)
select fioworker, dbo.meropriyatie.meropriyatie_ID
from dbo.meropriyatie, dbo.worker, dbo.workermeropriyatie
where dbo.workermeropriyatie.worker_ID=dbo.worker.worker_ID and
dbo.workermeropriyatie.meropriyatie_ID=dbo.meropriyatie.meropriyatie_ID and fioworker like ('Багдасарян%')
Рисунок 51
--9 Запрос Выдать время всех конференций (см.Рисунок 52)
select tip, nachalo, okonchanie
from dbo.meropriyatie, dbo.timeofmerop
where dbo.meropriyatie.meropriyatie_ID=dbo.timeofmerop.meropriyatie_ID and tip like ('Конференция')
Рисунок 54
--10 Запрос Какие мероприятия проводились в городе Новосибирск (см.Рисунок 53)
select dbo.meropriyatie.meropriyatie_ID, city
from dbo.meropriyatie, dbo.place, dbo.placemeropriyatie
where dbo.place.place_ID=dbo.placemeropriyatie.place_ID and
dbo.placemeropriyatie.meropriyatie_ID=dbo.meropriyatie.meropriyatie_ID and
city like ('Новосибирск')
Рисунок 53
3.3 Разработка запросов со встроенными функциями
--1.запрос с функцией Какова стоимость самого мероприятия? (см.Рисунок 54)
Select MAX(stoimost)
FROM dbo.meropriyatie
Рисунок 54
--2. запрос с функцией Какова стоимость самого дешевого мероприятия? (см.Рисунок 55)
Select MIN(stoimost)
FROM dbo.meropriyatie
Рисунок 55
--3. запрос с функцией Каково количество сотрудников на предприятии? (см. Рисунок 56)
SELECT COUNT(DISTINCT worker_ID)
FROM dbo.worker
Рисунок 56
--4.запрос с функцией Какова средняя стоимость мероприятий? (см. Рисунок 57)
SELECT AVG(stoimost)
FROM dbo.meropriyatie
Рисунок 57
--5. запрос с функцией Какова общая стоимость проведенных мероприятий? (см. Рисунок 58)
SELECT SUM (stoimost)
FROM dbo.meropriyatie
Рисунок 58
Запросы со встроенными функциями так же очень удобны для работы с базой данных, они позволяют быстро подсчитывать необходимую информацию.
Заключение
После выполнения данного курсового проекта мы достигли целей поставленных вначале. Создали базу данных по ведению информации о проведенных организацией мероприятиях. Теперь мы можем быстро вносить данные в базу, хранить ее, обрабатывать и искать необходимую нам информацию с помощью запросов. Также решили такие задачи как: хранение информации о сотрудниках и участниках мероприятий, хранение информации о местах и датах проведения мероприятий. Также хранение информации о стоимости того или иного мероприятия.
В данном курсовом проекте целью являлось разработать такую базу данных, которая необходима для ведения и хранения информации о мероприятии ООО «С нами выгодно».
Теперь база данных обеспечивает оперативную выдачу фактической информации, которую пользователь запрашивает в информационном запросе. Также выполнили ещё одну цель данного курсового проекта - закрепили навыки и знания в проектировании баз данных.
Список литературы
1. Дунаев В.В. Базы данных язык SQL - СПб.: БХВ Петербург, 2014. -288с.
2. Дейт, К. Дж. Введение в системы баз данных : [пер. с англ.] / К. Дж. Дейт .- 7-е изд .- М. : Вильямс, 2011 .- 1071 с .
3. Электронная документация по SQL Server
Размещено на Allbest.ru
Подобные документы
Программные продукты, используемые при проектировании базы данных. Разработка базы данных "Библиотека" с использование программного проекта Microsoft SQL Server. Создание таблиц, триггеров, пользователей, репликации, запросов, функций, процедур.
курсовая работа [897,6 K], добавлен 21.11.2011Проектирование базы данных для автоматизации работы салона художественной татуировки в среде разработки Delphi 7 с использование сервера баз данных Microsoft SQL Server 2008 R2. Схема алгоритма системы. Протокол тестирования программного продукта.
курсовая работа [539,3 K], добавлен 15.02.2017Разработка модуля автоматизации продажи автозапчастей. Проектирование информационной системы на основе базы данных в среде Microsoft SQL Server 2008. Структуры диалога и программного обеспечения. Описание запросов и отчетов к БД. Создание средств защиты.
курсовая работа [1,1 M], добавлен 10.12.2014Разработка базы данных для информационной поддержки деятельности аптеки с целью автоматизированного ведения данных о лекарствах аптеки. Проектирование схемы базы данных с помощью средства разработки структуры базы данных Microsoft SQL Server 2008.
курсовая работа [3,6 M], добавлен 18.06.2012Анализ проектирования автоматизированной информационной системы компьютерного магазина "Джей". Разработка базы данных на языке Transact-SQL в системе управления базами данных Microsoft SQL Server 2000. Расчет себестоимости и цены программного продукта.
курсовая работа [2,3 M], добавлен 16.08.2012Технические средства обеспечения функционирования информационной системы. Проектирование базы данных информационной системы. Разработка веб-приложения – справочно-информационной системы для предприятия. Организация записи информации в базу данных.
дипломная работа [4,4 M], добавлен 16.05.2022Программные средства для реализации базы данных и серверной части информационной системы "Учета технического обслуживания станков" средствами СУБД Microsoft SQL Server 2008. Разработка триггеров для поддержки сложных ограничений целостности в базе данных.
курсовая работа [768,3 K], добавлен 01.02.2013Разработка информационной системы ресторана, определение ее границ для реализации базы данных. Перечень запросов, отчетов и операций по вводу информации в информационной системе "Ресторан". Проектирование базы данных, выбор средств ее реализации.
курсовая работа [7,6 M], добавлен 27.04.2011Выбор методологии проектирования и разработка информационной системы "Расчёт зарплаты" для предприятия ОАО РТП "Авторемонтник". Архитектурное проектирование базы данных информационной системы и разработка её интерфейса. Тестирование программного модуля.
дипломная работа [2,3 M], добавлен 25.05.2014Создание реляционной базы данных с помощью системы управления Microsoft SQL Server 2012. Разработка программного продукта, который представляет собой систему учета археологического музея и демонстрирует возможности взаимодействия с созданной базой данных.
курсовая работа [1,8 M], добавлен 14.12.2015