Национальный исследовательский университет Томский политехнический университет Институт Кибернетики
Национальный исследовательский университет
Томский политехнический университет
Институт Кибернетики
Кафедра ОСУ
Базы Данных

ИДЗ № 14
«ЖИЛИЩНО-КОММУНАЛЬНОЕ ХОЗЯЙСТВО ГОРОДА»
Выполнил студент группы 8В83 | | А.Н. Ролдугин |
Проверила | | Е.Е. Мокина |
Оглавление
Задание 3
Нормализация 4
Логическая модель 7
Физическая модель 7
Представление 8
Расчет вторичных атрибутов(SQL) 9
Приложение 9
Задание
В основе предметной области лежит информация об обслуживании жилого фонда города, такая как: тип дома (кирпичный, деревянный и т.д.), адрес дома, вид управления дома, управляющая или обслуживающая компания, дата взятия на управление или обслуживание. Товарищества собственников жилья (ТСЖ) берут свой дом на самообслуживание, в таком случае информация по ним предоставляется следующая: название ТСЖ, адрес дома, дата сдачи дома, ФИО председателя ТСЖ, номер телефона председателя. Дом присоединен к определенному участку тепломагистрали.
Файл:
Наименование | Улица | Дом | Принадлежность | Начала ремонта | Конец ремонта | Вид ремонта | Стоимость ремонта | Организация, выполнившая ремонт |
Отчетность по предметной области содержит следующие документы:
ПЛАН-ГРАФИК ремонта тепловых сетей в ___________ районе.
№ п/п | Участки тепломагистралей | Январь | Февраль | … | Декабрь | Виды работ | L,км (2Ду) |
1 | 2 | 4 | 5 | | 16 | 17 | 18 |
1.1 | от ТРУ ПРК до ТП-22 (I-III) | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
1.2 | от ТРУ ПРК до ТП-25 (I-III) | | | | | | |
Нормализация
До нормализации:
Наименование | Улица | Дом | Принадлежность | Начала ремонта | Конец ремонта | Вид ремонта | Стоимость ремонта | Организация, выполнившая ремонт |
Дом | Адрес | Тип | Принадлежность | Дата взятия на обслуживание |
ЖКХ | Название |
ТСЖ | ФИО представителя | Телефон представителя |
Наименование | Месяц | Количество работ | Расстояние |
После нормализации:
Тепломагистраль:
Id наименования | Тепломагистраль |
Принадлежность дома к тепломагистрали:
Id наименование | Id Дома |
Дом:
Id Дома | Улица | Дом | Тип |
Принадлежность дома к организации:
Id Дома | Принадлежность | Дата взятия на обслуживание |
Ремонт в доме за год:
Id Дома | Год | Начало ремонта | Конец ремонта | Вид ремонта | Стоимость Ремонта | Организация, выполнившая ремонт |
УК:
УК | Название |
ТСЖ:
ТСЖ | ФИО представителя |
Представитель ТСЖ:
ФИО представителя | Телефон |
Объем работ на тепломагистрале за месяц:
Id наименования | Месяц | Количество работ | Растояние |
Логическая модель

Физическая модель

Представление
Представление показывает, какие дома, к какой тепломагистрале относятся.
TEPLOMAGISTRAL | STREET | NOMER |
TP-22(I-III) | Lenina | 12 |
TP-22(I-III) | Lenina | 3 |
TP-22(I-III) | Kirova | 3 |
TP-25(I-III) | Vershinina | 39 |

Расчет вторичных атрибутов(SQL)
ID_MAG | ID_MTH | KOL_RABOT | RAST |
1 | 1 | 12 | |
1 | 2 | 36 | |
1 | 3 | 21 | |
1 | 12 | 13 | |
2 | 2 | 23 | |
2 | 10 | 43 | |
Запрос выводит количество проделанных на магистрали работ за год.

Teplomagistral | Work In Year |
TP-25(I-III) | 66 |
TP-22(I-III) | 82 |
Приложение
CREATE TABLE home
(
id_home NUMBER NOT NULL ,
street VARCHAR2(20) NULL ,
nomer NUMBER NULL ,
type VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKhome ON home
(id_home ASC);
ALTER TABLE home
ADD CONSTRAINT XPKhome PRIMARY KEY (id_home);
CREATE TABLE HTM
(
id_home NUMBER NOT NULL ,
id_mag NUMBER NOT NULL
);
CREATE UNIQUE INDEX XPKHTM ON HTM
(id_home ASC,id_mag ASC);
ALTER TABLE HTM
ADD CONSTRAINT XPKHTM PRIMARY KEY (id_home,id_mag);
CREATE TABLE HTO
(
data_na_rem DATE NOT NULL ,
id_home NUMBER NOT NULL ,
yk_name VARCHAR(5) NULL ,
tcz_name VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKHTO ON HTO
(id_home ASC,data_na_rem ASC);
ALTER TABLE HTO
ADD CONSTRAINT XPKHTO PRIMARY KEY (id_home,data_na_rem);
CREATE TABLE mth
(
id_mth NUMBER NOT NULL ,
mth DATE NULL
);
CREATE UNIQUE INDEX XPKmth ON mth
(id_mth ASC);
ALTER TABLE mth
ADD CONSTRAINT XPKmth PRIMARY KEY (id_mth);
CREATE TABLE Pred_tcz
(
FIO_tcz VARCHAR2(20) NOT NULL ,
nomer_tcz NUMBER NULL
);
CREATE UNIQUE INDEX XPKPred_tcz ON Pred_tcz
(FIO_tcz ASC);
ALTER TABLE Pred_tcz
ADD CONSTRAINT XPKPred_tcz PRIMARY KEY (FIO_tcz);
CREATE TABLE Rabota
(
id_mag NUMBER NOT NULL ,
id_mth NUMBER NOT NULL ,
kol_rabot NUMBER NULL ,
rast NUMBER NULL
);
CREATE UNIQUE INDEX XPKRabota ON Rabota
(id_mag ASC,id_mth ASC);
ALTER TABLE Rabota
ADD CONSTRAINT XPKRabota PRIMARY KEY (id_mag,id_mth);
CREATE TABLE remont
(
id_home NUMBER NOT NULL ,
god NUMBER NOT NULL ,
nac_rem DATE NULL ,
kon_rem DATE NULL ,
type_rem VARCHAR2(20) NULL ,
stoim_rem VARCHAR2(20) NULL ,
org_rem VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKremont ON remont
(id_home ASC,god ASC);
ALTER TABLE remont
ADD CONSTRAINT XPKremont PRIMARY KEY (id_home,god);
CREATE TABLE tcz
(
tcz_name VARCHAR2(20) NOT NULL ,
FIO_tcz VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKtcz ON tcz
(tcz_name ASC);
ALTER TABLE tcz
ADD CONSTRAINT XPKtcz PRIMARY KEY (tcz_name);
CREATE TABLE TM
(
id_mag NUMBER NOT NULL ,
teplomag VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKTM ON TM
(id_mag ASC);
ALTER TABLE TM
ADD CONSTRAINT XPKTM PRIMARY KEY (id_mag);
CREATE TABLE YK
(
yk_name VARCHAR(5) NOT NULL ,
yk_naz VARCHAR2(20) NULL
);
CREATE UNIQUE INDEX XPKYK ON YK
(yk_name ASC);
ALTER TABLE YK
ADD CONSTRAINT XPKYK PRIMARY KEY (yk_name);
CREATE VIEW m_view ( teplomag,street,nomer )
AS SELECT TM.teplomag,home.street,home.nomer
FROM TM,HTM,home
WHERE HTM.id_mag = TM.id_mag and
HTM.id_home = home.id_home;
2011
страница 1
скачать
Другие похожие работы: