Проектирование базы данных "Агентство по трудоустройству"

 

Федеральное агентство по образованию

Государственное образовательное учреждение высшего профессионального образования

«Санкт-Петербургский государственный политехнический университет»

Институт международных образовательных программ









Курсовой проект

по дисциплине «Базы данных»

Проектирование базы данных Агентство по трудоустройству



Выполнил Лян А.А

Руководитель Бураков П. В.







Санкт-Петербург 2012



План


1. Постановка задачи

. Информационно-логическая модель

. Физическая модель базы данных

. Создание базы данных в СУБД MS SQL Server

.2 Создание базы данных с помощью программного SQL кода

.3 Создание диаграммы базы

. Описание SQL запросов



. Постановка задачи


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

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

Наиболее важными компонентами системы являются:

·соискатель;

·менеджер;

·Вакансия;

Основными процессами данной системы являются:

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

·оформление документов;

·учет трудоустройства или не трудоустройства соискателя;

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



2. Информационно-логическая модель

база информационный логический запрос

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

Сущность - это то, о чем необходимо хранить информацию, что может быть однозначно идентифицировано.

Исходя из поставленной цели и задачи, можно выделить следующие объекты: менеджер, соискатель, предприятие, запись о трудоустройстве, вакансия . Далее следует определить взаимосвязи между ними. Обозначим взаимосвязь объектов в соответствии с поставленной задачей (см. Рис. 2.1).

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

Затем следует определить свойства (атрибуты) каждой сущности (см. Таблица 2.1).


Рис 2.1 Логическая модель базы данных


Таблица 2.1 Сущность и их свойства

СущностьАтрибутыМенеджерУК менеджер Адрес Телефон ФИО Должность Возраст ПолСоискательУК Соискателя Фамилия Имя Отчество Дата рождения Пол Стаж работы Диплом ОбразованиеВакансияУК вакансий Минимальная заработная плата Образование Опыт работы Возраст Гражданство УК предприятия ДолжностьПредприятиеУК предприятие Название предприятия Адрес Лицензия ДолжностьЗапись о трудоустройствеУК записи трудоустройства УК вакансий УК соискателя


3. Физическая модель базы данных


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


Рис 3.1 Физическая модель базы данных



4. Создание базы данных в СУБД MS SQL Server


.1 Создание файла базы данных


Рис. 4.1 Создание файла базы данных


4.2 Создание базы данных с помощью программного SQL кода


На языке SQL создание таблиц осуществляется с помощью оператора Create Table. Далее необходимо указать имя будущей таблицы, названия столбцов, их тип данных и возможность наличия значения null. Таким ключевым словом указывается столбец, который может содержать неопределенные значения. Столбцы первичных ключей обязательно имеют значения not null.

TABLE Menedzher (

Adres char(25) NULL,_Menedzhera char(5) NOT NULL,int NULL,_I_O char(25) NULL,char(50) NULL,char(5) NULL,char(2) NULL,KEY NONCLUSTERED (UK_Menedzhera)

)


Для создания своей базы данных нужно скопировать код базы получившейся в программной среде ERWin в окно нового запроса New Query и запустить его.


Код схемы базы данных:TABLE Predpriyatie (_predpriyatiya char(30) NULL,_Predpriyatiya char(5) NOT NULL,char(30) NULL,char(25) NULL,KEY NONCLUSTERED (UK_Predpriyatiya)

)TABLE Vakansiya (_zar_plata money NULL,_Vakansi char(5) NOT NULL,char(15) NULL,_raboti char(10) NULL,char(5) NULL,char(18) NULL,_Predpriyatiya char(5) NULL,char(30) NULL,KEY NONCLUSTERED (UK_Vakansi),KEY (UK_Predpriyatiya)Predpriyatie

)TABLE Menedzher (char(25) NULL,_Menedzhera char(5) NOT NULL,int NULL,_I_O char(25) NULL,char(50) NULL,char(5) NULL,char(2) NULL,KEY NONCLUSTERED (UK_Menedzhera)

)TABLE Soiskatel (_I_O char(25) NULL,_Soiskatel char(5) NOT NULL,_rozhdeniya int NULL,char(2) NULL,_raboti char(10) NULL,char(35) NULL,char(15) NULL,KEY NONCLUSTERED (UK_Soiskatel)

)TABLE Zapis_o_trudoystroistve (_Vakansi char(5) NULL,_zapisi_trudystroistva char(5) NOT NULL,_Soiskatel char(5) NULL,_Menedzhera char(5) NULL,KEY NONCLUSTERED (UK_zapisi_trudystroistva),KEY (UK_Menedzhera)Menedzher,KEY (UK_Soiskatel)Soiskatel,KEY (UK_Vakansi)Vakansiya

)


4.3 Создание диаграммы базы


В базе данных уже созданы таблицы и при помощи первичных и внешних ключей описаны отношения между этими таблицами. Для наглядного представления этой информации. Создадим диаграмму базы данных (см. Рис 4.3).

Для этого нужно выбрать команду New Database Diagram из контекстного меню Database Diagram (см. Рис 4.2) и в появившемся диалоговом окне добавим в диаграмму все столбцы .



Рис. 4.2. Создание новой диаграммы


Рис. 4.3 Диаграмма базы данных



5. Описание SQL запросов


Существуют четыре основных типа запросов данных в SQL, которые относятся к языку манипулирования данными:- добавить строки в таблицу;- изменить строки в таблице;- удалить строки в таблице;- выбрать строки из таблиц;

Каждый из них имеет различные операторы и функции для произведения каких-то действий с данными.

Запрос INSERT

Что бы добавить строки в таблицу, для начала откроем SQL . Потом находим нашу базу данных. Найдя нашу базу, откроем контекстное меню и выбираем New Query (Рис 5.1).


Рис 5.1


В открывшемся окне вводим наш запрос INSERT.

insert into dbo.Menedzher

(Adres, UK_Menedzhera, Telefon, F_I_O)('Gra 30 dom 3 kv 5', '01', '891145323', 'Лян Артём Андреевич').

После этого нажимаем EXECUTE ( рис 5.2).


Рис 5.2 Результат запроса INSERT


Запрос UPDATE

Для того что бы изменить строки в таблице не обходимо открыть New Query и появившемся окне вести запрос.

update dbo.MenedzherTelefon = '891145323'Telefon = '892165356' ;

Результат (рис 5.3).


Рис 5.3 Результат запроса UPDATE


Запрос DELETE

Для того что бы удалить строки в таблице не обходимо открыть New Query и появившемся окне вести запрос (см. рис 5.4).


Рис 5.4 Результат запроса DELETE


Запрос SELECT

С помощью команды SELECT осуществляется выборка данных. По этой инструкции ядро базы данных возвращает данные из базы в виде набора записей. (см Рис. 5.5)

select F_I_O, Vozrast, Dolzhnostdbo.Menedzher



Предикат TOP

Возвращает определенное число записей, находящихся в начале или в конце диапазона, описанного с помощью предложения ORDER BY. Следующая инструкция SQL позволяет получить список 3 лучших менеджеров.TOP 3

Имя, Фамилия, должность , возраст.Менеджер

Предикат ASC обеспечивает возврат последних значений. Значение, следующее после предиката TOP должно быть числовым значением типа Integer без знака.

Предикат TOP не влияет на возможность обновления запроса.( Рис.5.6)



Операция INNER JOIN

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

Синтаксистаблица_1 INNER JOIN таблица_2 ON таблица_1.столбец_1 оператор таблица_2.столбец_2

Ниже перечислены аргументы операции INNER JOIN:

Элемент

Описание

таблица_1, таблица_2

Имена таблиц, записи которых подлежат объединению.

столбец_1, столбец_2

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

оператор

Любой оператор сравнения: "=", "<", ">", "<=", ">=" или "<>".

Дополнительные сведения

Операцию INNER JOIN можно использовать в любом предложении FROM. Это самые обычные типы связывания. Они объединяют записи двух таблиц, если связующие столбцы обеих таблиц содержат одинаковые значения.

Операцию INNER JOIN можно использовать с таблицами «Отделы» и «Сотрудники» для отбора всех сотрудников каждого отдела. Для отбора же всех отделов (в том числе тех, в которых нет ни одного сотрудника) или всех сотрудников (в том числе тех, кто не приписан ни к одному отделу) следует использовать операцию LEFT JOIN или RIGHT JOIN, которая создает внешнее объединение. Допускается объединение любых двух числовых столбцов подобных типов. Например, столбец счетчика можно объединить со столбцом типа «Длинное целое». Однако нельзя объединить типы столбцов Single и Double.

Следующая инструкция SQL объединяет таблицы «Типы» и «Товары» по столбцу «КодТипа»:

Категория, МаркаТипы INNER JOIN ТоварыТипы.КодТипа = Товары.КодТипа;


В предыдущем примере столбец «КодТипа» используется для объединения таблиц, однако оно не включается в результат выполнения запроса, поскольку не включено в инструкцию SELECT. Чтобы включить связующий столбец (в данном случае столбец Типы.КодТипа) в результат выполнения запроса, следует включить имя этого столбца в инструкцию SELECT.

Чтобы связать несколько предложений ON в инструкции JOIN, используйте следующий синтаксис.( Рис 5.7).


select Nazvanie_predpriyatiya, Dolzhnostdbo.Predpriyatie inner join dbo.Vakansiyadbo.Predpriyatie.UK_Predpriyatiya = dbo.Vakansiya.UK_Predpriyatiyaby Nazvanie_predpriyatiya asc


Рис 5.7


Операции LEFT JOIN, RIGHT JOIN

Объединяют записи исходных таблиц при использовании в любом предложении FROM.

Синтаксис


FROM таблица_1 [ LEFT | RIGHT ] JOIN таблица_2

ON таблица_1.столбец_1 оператор таблица_2.столбец_2

Ниже перечислены аргументы операций LEFT JOIN и RIGHT JOIN:

Элемент

таблица_1, таблица_2

Имена таблиц, записи которых подлежат объединению.

столбец_1, столбец_2


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


оператор

Любой оператор сравнения: "=", "<", ">", "<=", ">=" или "<>".


Рис 5.8


Предложение WHERE

Определяет, какие записи из таблиц, перечисленных в предложении FROM, следует включить в результат выполнения инструкции SELECT, UPDATE или DELETE.

Синтаксис

списокСтолбцоввыражениеусловиеОтбора


Инструкция SELECT, содержащая предложение WHERE, состоит из трех частей:

Элемент

Описание

Список Столбцов

Имена одного или нескольких столбцов, из которых отбираются данные, вместе с псевдонимами, предикатами отбора (ALL, DISTINCT или TOP) и другими элементами инструкции SELECT.

выражение

Имена одной или нескольких таблиц, из которых отбираются данные.

Условие Отбора

Выражение, которому должны удовлетворять записи, включаемые в результат выполнения запроса.



Рис 5.9


Запрос count

Функция COUNT несколько отличается от всех. Она считает число значений в данном столбце, или число строк в таблице. Когда она считает значения столбца, она используется с DISTINCT чтобы производить счет чисел различных значений в данном поле. Мы могли бы использовать ее, например, чтобы сосчитать номера продавцов в настоящее врем описанных в таблице Порядков (Рис 6.0)


Рис 6.1



Список использованных источников


1.Бураков П. В. Лекционный материал и лабораторные работы

2.Базы данных (электронный ресурс) - <#"justify">4.Дейт К. Введение в системы баз данных


Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования «Санкт-Петербургский государств

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ