2. SQL-код для создания таблиц
база данные таблица автоматизируемый
use myDB
CREATE TABLE Sotr --Учет кадров отдела (сотрудники)
( Tabnumber varchar(6) not null PRIMARY KEY, FIO varchar(30) not null, sex char(1) not null, adress varchar(30) not null, obraz char(10) null, kod_dolz char(4) not null, dolz varchar(15) not null, stage tinyint, oklad money not null )
insert into Sotr (Tabnumber, FIO, sex, adress,obraz,kod_dolz,dolz,stage,oklad) values (469001,'ИвановСВ','М','Новочебоксарск','высшее','1001','начальник', 12,9000)
insert into Sotr (Tabnumber, FIO, sex,adress,obraz,kod_dolz,dolz,stage,oklad) values (469002,'ЛьвоваСП', 'Ж','Чебоксары','высшее','1012','программист',8,7000)
insert into Sotr (Tabnumber, FIO, sex, adress,obraz,kod_dolz,dolz,stage,oklad) values (469005,'АндреевИА', 'М','Чебоксары','высшее','1010','инженер',3,5500)
CREATE TABLE Intc --Учетинцидентов
( ID int not null PRIMARY KEY, date datetime not null, zakaz char(6) not null, opis varchar(35) not null, Tabnumber varchar(6) not null FOREIGN KEY (Tabnumber) REFERENCES Sotr(Tabnumber), sost char(10) )
insert into Intc (ID,date,zakaz,opis,Tabnumber,sost) values (1001,'20101112','БОТИЗ','ремонтПК',469005,'завершено')
insert into Intc (ID,date,zakaz,opis,Tabnumber,sost) values (1005,'20101113','ПЭО','добавитьзапросы',469002,'отложено')
insert into Intc (ID,date,zakaz,opis,Tabnumber,sost) values (1002,'20101213','ОГМет','ремонтПК',469005,'отложено')
CREATE TABLE Park --Учет парка компьютерной техники
( invN varchar(6) not null PRIMARY KEY, typeKT char(20) not null, model char(30) not null, podr char(10) not null )
insert into Park (invN,typeKT,model,podr) values ('001234','АРМ','HP ARM-500','БОТИЗ')
insert into Park (invN,typeKT,model,podr) values ('001239','сетевоеобор-ие','Cisco 3750', 'ОАСУ')
CREATE TABLE Zakaz --Учет заказа расходных материалов и комплектующих
( Nzak varchar(6) not null, naim char(20) not null, kolvo int null, Tabnumber varchar(6) not null FOREIGN KEY (Tabnumber) REFERENCES Sotr(Tabnumber) )
insert into Zakaz (Nzak,naim,kolvo,Tabnumber) values ('00012','Паста (КТП-8)',3,469005)
insert into Zakaz (Nzak,naim,kolvo,Tabnumber) values ('00013','тонер HP1200',10,469005)
CREATETABLERemKT--Учет ремонта техники
( ID int not null FOREIGN KEY (ID) REFERENCES Intc(ID), invN varchar(6) not null FOREIGN KEY (invN) REFERENCES Park(invN), diag char(10) null, Tabnumber varchar(6) not null FOREIGN KEY (Tabnumber) REFERENCES Sotr(Tabnumber), timr int not null )
insert into RemKT (ID,invN,diag,Tabnumber,timr) values ('1001','001234','перегрев',469005,2)
SELECT * FROM Sotr
SELECT * FROM Intc
SELECT * FROM Park
SELECT * FROM Zakaz
SELECT * FROMRemKT
Результаты формирования таблиц:
3.1 Создадим процедуру которая увеличит оклад на 10% для сотрудников со стажем более 3 лет в данном отделе
create procedure povysh as update Sotr set oklad=oklad*1.1 where stage>3
Вывод для просмотра результатов:
execpovysh;
SELECT * FROM Sotr
Сравнивая таблицу «сотрудники» до использования процедуры povysh и после можно убедится, что оклад был повышен на 10% всем сотрудникам со стажем более 3 лет.
Создадим запрос для вывода таблицы «инцидентов» с указанием фамилий вместо табельных номеров сотрудников
select ID,date,zakaz,opis,FIO,sost
from sotr
inner join intc
on sotr.tabnumber=intc.tabnumber
Как видим указанный запрос позволяет показать таблицу «инциденты» уже с фамилиями сотрудников и например проследить состояние инцидента у каждого из них.
В результате выполнения курсового проектирования была разработана структура реляционной базы данных для гипотетической информационной системы «Отдел автоматизированных систем управления». В процессе работы были выработаны умения и навыки проектирования структуры базы данных, предназначенной для функционирования автоматизированной информационной системы.
В результате анализа предположительного функционирования гипотетической автоматизированной системы были выбраны пять автоматизируемых функций, охватывающих управление и организацию кадров, инциденты, ремонт техники и заказ комплектующих, информационное обеспечение которых соответствует пяти объектам предметной области и включает 25 атрибутов.
Выполнено инфологическое проектирование базы данных и спроектирована реляционная SQL-модель, созданы запросы для формирования таблиц и процедура, которая, например – повышает оклад сотрудникам, работающим более 3 лет.
Список литературы
1. Грубер М. Понимание SQL. Перевод. Лебедева В.Н. Под редакцией Булычева В.Н. МОСКВА, 1993.
2. Дейт К.Дж. Введение в системы баз данных: Пер. с англ. — 6-е изд. — Киев: Диалектика, 1998.
3. Маклаков С.В. BPwin и Erwin. CASE-средства разработки информационных систем. — М.: ДИАЛОГ–МИФИ, 1999.
4. Саймон А.Р. Стратегические технологии баз данных: менеджмент на 2000 год: Пер. с англ. — М.: Финансы и статистика, 1999.
5. Фаулер М., Скотт К. UML в кратком изложении. Применение стандартного языка объектного моделирования: Пер. с англ. — М.: Мир, 1999.
6. Учебный курс Microsoft. Microsoft SQL SERVER 2005 Реализация и обслуживание. М: Русская редакция, 2007.