Отдел кадров

Автор работы: Пользователь скрыл имя, 08 Ноября 2011 в 13:19, курсовая работа

Краткое описание

Цель данной работы заключается в том, чтобы изучить некую систему управления базами данных (в дальнейшем СУБД), научиться создавать и управлять в ней базами данных (в дальнейшем БД), а также уметь манипулировать самими БД с помощью запросов.
Для примера БД, необходимо спроектировать схему какой либо предметной области, определить её свойства и создать БД в СУБД, а также проверить ее работоспособность и изучить свойства различными запросами.

Содержание работы

1. Постановка задачи 3
2. Подготовка к работе 4
3. Схема БД 6
4. Создание таблиц 8
5. Заполнение таблиц 12
6. Работа с таблицами, запросы 15
7. Заключение 19

Содержимое работы - 1 файл

отчет.docx

— 135.47 Кб (Скачать файл)

Министерство образования  РФ

Нижегородский государственный  университет

имени Н.И. Лобачевского 

Экономический факультет

Кафедра экономической  информатики 

Курсовая работа по дисциплине: "Базы данных"

На тему: "Отдел кадров" 
 
 
 
 

                  Выполнил:

                  Студент 735 группы

                  Михайлов С. С. 

                  Проверил:

                  Визгунов А. Н. 
                   
                   

Н. Новгород

2010 г.

Оглавление 

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

2. Подготовка к работе 4

3. Схема БД 6

4. Создание таблиц 8

5. Заполнение таблиц 12

6. Работа с таблицами, запросы 15

7. Заключение 19 

 

  

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

  Цель данной работы заключается в том, чтобы изучить некую систему управления базами данных (в дальнейшем СУБД), научиться создавать и управлять в ней базами данных (в дальнейшем БД), а также уметь манипулировать самими БД с помощью запросов.

    Для примера БД, необходимо спроектировать схему какой либо предметной области, определить её свойства и создать БД в СУБД, а также проверить ее работоспособность и изучить свойства различными запросами.

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

 

2. Подготовка к работе

  Для создания БД мною была выбрана СУБД Oracle, для работы с этой СУБД пользователю необходимо какое либо приложение для того, чтобы подключится к ней и в дальнейшем работать.

  После установки СУБД на свой ПК, воспользовавшись стандартным компонентом под названием SQLPlus, я зашел в СУБД под стандартным, системным логином: "SYS"

  

  Как видим, соединение прошло успешно, для  дальнейшей работы необходимо создать пользователя.

  Для его создания, применяется команда DDL - CREATE USER, она имеет следующий синтаксис:

CREATE USER [пользователь] IDENTIFIED BY [пароль]

DEFAULT TABLESPACE [tablespace] QUOTA целое число [K][M] ON [tablespace]

TEMPORARY TABLESPACE [tablespace] QUOTA  целое число [K][M] ON [tablespace]

  С помощью запроса: "create user RK identified by KR;", Создаем пользователя "RK" с паролем "KR":

  

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

  Для того чтобы он мог подключаться к  базе данных, работать с ней, с объектами  базы данных и данными, ему необходимо выдать разрешения на те или иные действия. Эти разрешения называются привилегиями. Различают три вида привилегий:

  Объектные (Object privileges) – это разрешения на объекты  схемы, такие как таблицы, представления, последовательности, пакеты. Для использования  объектов схемы принадлежащих другому  пользователю, необходимы привилегии на этот объект.

  Системные (System privileges) – это разрешения на операции уровня базы данных, например подключение  к базе данных, создание пользователей, внесение изменений в конфигурацию базы данных.

  Ролевые (Role privileges) – это объектные и системные привилегии, которые пользователь получает как роль. Роли – это возможность для администрирования групп или привилегий.

  Объектные привилегии позволяют выдать разрешения на объекты, принадлежащие другому пользователю. Некоторые привилегии применимы только к определенным объектам схемы. Например, привилегии INDEX применимы только к таблицам, и привилегия SELECT применима к таблицам, представлениям и последовательностям.

  Объектные привилегии позволяют выполнять SELECT, INSERT, UPDATE и DELETE операции, а так же выполнять программные блоки PL/SQL.

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

  
Привилегия:   Выдается  на:
SELECT  Таблицы,  представления, последовательности, синонимы   
INSERT  Таблицы,  представления, синонимы
UPDATE  Таблицы,  представления, синонимы
DELETE  Таблицы,  представления, синонимы
ALTER  Таблицы,  последовательности
EXECUTE  Процедуры,  функции, пакеты, синонимы

И полномочия, и роли предоставляются пользователям  оператором GRANT, а отбираются соответственно - REVOKE. 

Общий синтаксис команды GRANT выглядит так:

      GRANT привилегия ON схема.объект TO пользователь [WITH GRANT OPTION];

 

Опция WITH GRANT OPTION позволяет передавать привилегии третьим пользователям.

  Для простоты, в нашем случае, мы выдадим пользователю все привилегии:

  

  Теперь  мы можешь отсоединится от БД стандартным системным пользователем и попробуем зайти созданным пользователем RK:

  

  Видим, что под новым пользователем  мы успешно присоединились к БД.

 

3. Схема БД

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

  Для того, чтобы спроектировать БД было проще, я воспользовался сторонним  приложением "Oracle SQL Developer Data Modeler".

  Oracle SQL Developer Data Modeler представляет собой  универсальный, полностью автономный  инструмент с поддержкой логического,  реляционного, многомерного моделирования  и моделирования типов данных. Возможность конструирования моделей  данных на разных уровнях позволяет  сформировать исчерпывающие концептуальные  блок-схемы связей между сущностями ERD (Entity Relationship Diagram) и превратить  их в рабочие реляционные модели  данных. С помощью пакета Oracle SQL Developer Data Modeler пользователи могут создавать,  расширять и модифицировать модели  данных, а также сравнивать свои модели с уже существующими.

   Созданная схема в Oracle SQL Developer Data Modeler выглядит так: 
 

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

  В схеме также видны типы данных и ограничения, буква F означает что данное поле - внешний ключ, P - первичный, * - обязательное поле ( is not null)

  Названия  полей и их обозначение:

  Таблица "SOTRUDNIKI":

  "KODSOTRUD” – код сотрудника;

  "TABLENUMBER" – табельный номер сотрудника;

  "SURNAME" – фамилия сотрудника;

  "NAMES" – имя сотрудника;

  "SECONDNAME" – отчество сотрудника;

  "BIRTHDAY" – дата рождения;

  "STREET" – улица проживания;

  "DOM" – дом проживания;

  "KVARTIRA" – квартира проживания; 

  "TELEFON" – телефон сотрудника;

  "OTDELY_KODOTDELA" – код отдела работы сотрудника;

  "DOLZNOSTI_KODDOLZNOSTI" – код должности сотрудника;

  "GORODA_KODGORODA" код города проживания сотрудника;

  "OBRAZOVANIE_KODOBRAZOVANIYA"  - код образования сотрудника;

  "SEMEYNOEPOLZENIE_KODPOLOZENIYA" – код семейного сотрудника. 

  Таблица " DOLZNOSTI":

  "KODDOLZNOSTI" – код должности;

  "DOLZNOST" – название должности. 

  Таблица "GORODA":

  "KODGORODA" – код города;

  "GOROD" – название города. 

  Таблица "OTDELY":

  "KODOTDELA" – код отдела;

  "OTDEL" – название отдела. 

  Таблица "OBRAZOVANIE":

  "KODOBRAZOVANIYA" – код образования;

  "OBRAZOVANIE" – имеющиеся образование. 

  Таблица "SEMEYNOEPOLOZENIE":

  "KODPOLOZENIYA" – код семейного положения;

  "POLOZENIE" – семейное положение. 

 

    4. Создание таблиц

  После того, как в Oracle SQL Developer Data Modeler была создана схема БД, воспользуемся встроенной функцией генерации: "Generate DDL". Программа сгенерировала нам DDL код:

CREATE TABLE Dolznosti

    (

     KodDolznosti INTEGER  NOT NULL ,

     Dolznost VARCHAR2 (150 CHAR)  NOT NULL

    );

ALTER TABLE Dolznosti

    ADD CONSTRAINT Dolznosti_PK PRIMARY KEY ( KodDolznosti ) ;

CREATE TABLE Goroda

    (

     KodGoroda INTEGER  NOT NULL ,

     Gorod VARCHAR2 (100 CHAR)  NOT NULL

    );

ALTER TABLE Goroda

    ADD CONSTRAINT Goroda_PK PRIMARY KEY ( KodGoroda ) ;

CREATE TABLE Obrazovanie

    (

     KodObrazovaniya INTEGER  NOT NULL ,

     Obrazovanie VARCHAR2 (100 CHAR)  NOT NULL

    );

ALTER TABLE Obrazovanie

    ADD CONSTRAINT Obrazovanie_PK PRIMARY KEY ( KodObrazovaniya ) ;

Информация о работе Отдел кадров