Вы находитесь на странице: 1из 15

Міністерство освіти і науки України

Харківський національний університет радіоелектроніки

Звіт

З лабораторної роботи №1

З дисципліни «Організація баз даних та знань»

Перевірив:
Виконала:
Асистент
Ст. гр. ІТІНФ-20-3
Пономаренко Р.П.
Бєлєвцева А.Р.

Харків 2021
1. Цель работы
Отработать навыки создания ER-модели с использованием
инструментального CASE-средства ERwin, генерации структуры БД в СУБД
MS SQL SERVER.
2. Ход работы(ПО «Результат  учебного процесса»)

Рис 1.- Логическая модель ПО «Результат  учебного процесса»

Рис 2.- Физическая модель ПО «Результат  учебного процесса»


2.1- DDL скрипт создания БД для MS SQL SERVER
CREATE TABLE Department
(
NameDep varchar(20) NOT NULL ,
Room integer NULL ,
CONSTRAINT PKDepartment PRIMARY KEY CLUSTERED (NameDep ASC)
)
go

CREATE TABLE Group


(
NameGroup varchar(20) NOT NULL ,
CONSTRAINT PKGroupSt PRIMARY KEY CLUSTERED (NameGroup ASC)
)
go

CREATE TABLE Lecturer


(
NameDep varchar(20) NOT NULL ,
IDLect integer NOT NULL ,
NameLect varchar(20) NULL ,
NamePosition varchar(20) NOT NULL ,
CONSTRAINT PKLecturer PRIMARY KEY CLUSTERED (IDLect ASC),
CONSTRAINT R_1 FOREIGN KEY (NameDep) REFERENCES Department(NameDep)
ON DELETE NO ACTION
ON UPDATE CASCADE,
CONSTRAINT R_15 FOREIGN KEY (NamePosition) REFERENCES
Position(NamePosition)
ON DELETE NO ACTION
ON UPDATE CASCADE
)
go

CREATE TABLE Phone


(
IDLect integer NOT NULL ,
Phone varchar(20) NOT NULL ,
CONSTRAINT PKPhone PRIMARY KEY CLUSTERED (IDLect ASC,Phone ASC),
CONSTRAINT R_14 FOREIGN KEY (IDLect) REFERENCES Lecturer(IDLect)
ON DELETE CASCADE
ON UPDATE CASCADE
)
go

CREATE TABLE Position


(
NamePosition varchar(20) NOT NULL ,
Salary integer NULL ,
CONSTRAINT PKPosition PRIMARY KEY CLUSTERED (NamePosition ASC)
)
go

CREATE TABLE Specialization


(
IDLect integer NOT NULL ,
IDSubject integer NOT NULL ,
CONSTRAINT PKSpecialization PRIMARY KEY CLUSTERED (IDLect ASC,IDSubject
ASC),
CONSTRAINT R_11 FOREIGN KEY (IDLect) REFERENCES Lecturer(IDLect)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT R_12 FOREIGN KEY (IDSubject) REFERENCES Subject(IDSubject)
ON DELETE CASCADE
ON UPDATE CASCADE
)
go

CREATE TABLE Student


(
IDStudent integer NOT NULL ,
ApprovDiplTopic integer NULL ,
NameStudent varchar(20) NULL ,
NameGroup varchar(20) NOT NULL ,
CONSTRAINT PKStudent PRIMARY KEY CLUSTERED (IDStudent ASC),
CONSTRAINT R_10 FOREIGN KEY (NameGroup) REFERENCES GroupSt(NameGroup)
ON DELETE NO ACTION
ON UPDATE CASCADE
)
go

CREATE TABLE Subject


(
IDSubject integer NOT NULL ,
NameSubject varchar(20) NULL ,
Hours integer NULL ,
CONSTRAINT PKSubject PRIMARY KEY CLUSTERED (IDSubject ASC)
)
go

CREATE TABLE Test


(
IDStudent integer NOT NULL ,
Mark integer NULL ,
Date datetime NULL ,
IDLect integer NOT NULL ,
IDSubject integer NOT NULL ,
CONSTRAINT PKTest PRIMARY KEY CLUSTERED (IDStudent ASC,IDLect
ASC,IDSubject ASC),
CONSTRAINT R_4 FOREIGN KEY (IDStudent) REFERENCES Student(IDStudent)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT R_13 FOREIGN KEY (IDLect,IDSubject) REFERENCES
Specialization(IDLect,IDSubject)
ON DELETE CASCADE
ON UPDATE CASCADE
)
go

Рис 3.- Диаграмма полученной БД в MS SQL SERVER


3. Ход работы(ПО «Агентство недвижимости»)(а)
Рис 4.- Логическая модель ПО «Агентство недвижимости»

Рис 5.- Физическая модель ПО «Агентство недвижимости»

3.1- DDL скрипт создания БД для MS SQL SERVER


CREATE TABLE [Bargain]
(
[DateSale] char(18) NULL ,
[IDCustomer] integer NOT NULL ,
[AddressImmovables] varchar(20) NOT NULL ,
[IDEmployee] integer NOT NULL
)
go

CREATE TABLE [Customer]


(
[IDCustomer] integer NOT NULL ,
[NameCustomer] varchar(20) NULL ,
[AddressCustomer] varchar(20) NULL ,
[PhoneNomber] integer NULL
)
go

CREATE TABLE [Employee]


(
[IDEmployee] integer NOT NULL ,
[NameEmployee] varchar(20) NULL ,
[PhoneNomber] integer NULL ,
[IDOwner] integer NOT NULL
)
go

CREATE TABLE [HouseFoundation]


(
[TypeFund] varchar(20) NOT NULL
)
go

CREATE TABLE [Immovables]


(
[Area] integer NULL ,
[Cost] integer NULL ,
[DateList] datetime NULL ,
[DataSale] datetime NULL ,
[IDOwner] integer NOT NULL ,
[AddressImmovables] varchar(20) NOT NULL ,
[TypeFund] varchar(20) NOT NULL
)
go

CREATE TABLE [Owner]


(
[IDOwner] integer NOT NULL ,
[NameOwner] varchar(20) NULL ,
[PhoneNomber] integer NULL
)
go

CREATE TABLE [Phone]


(
[PhoneNomber] integer NOT NULL ,
[IDCity] integer NULL
)
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [XPKBargain] PRIMARY KEY CLUSTERED ([IDCustomer]
ASC,[AddressImmovables] ASC,[IDEmployee] ASC)
go

ALTER TABLE [Customer]


ADD CONSTRAINT [XPKCustomer] PRIMARY KEY CLUSTERED ([IDCustomer]
ASC)
go

ALTER TABLE [Employee]


ADD CONSTRAINT [XPKEmployee] PRIMARY KEY CLUSTERED ([IDEmployee]
ASC)
go

ALTER TABLE [HouseFoundation]


ADD CONSTRAINT [XPKHouseFoundation] PRIMARY KEY CLUSTERED
([TypeFund] ASC)
go

ALTER TABLE [Immovables]


ADD CONSTRAINT [XPKImmovables] PRIMARY KEY CLUSTERED
([AddressImmovables] ASC)
go

ALTER TABLE [Owner]


ADD CONSTRAINT [XPKOwner] PRIMARY KEY CLUSTERED ([IDOwner] ASC)
go

ALTER TABLE [Phone]


ADD CONSTRAINT [XPKPhone] PRIMARY KEY CLUSTERED ([PhoneNomber]
ASC)
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [R_6] FOREIGN KEY ([IDCustomer]) REFERENCES
[Customer]([IDCustomer])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [R_8] FOREIGN KEY ([AddressImmovables]) REFERENCES
[Immovables]([AddressImmovables])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [R_10] FOREIGN KEY ([IDEmployee]) REFERENCES
[Employee]([IDEmployee])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Customer]


ADD CONSTRAINT [R_13] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Employee]


ADD CONSTRAINT [R_11] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Employee]


ADD CONSTRAINT [R_14] FOREIGN KEY ([IDOwner]) REFERENCES [Owner]
([IDOwner])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go
ALTER TABLE [Immovables]
ADD CONSTRAINT [R_5] FOREIGN KEY ([IDOwner]) REFERENCES [Owner]
([IDOwner])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Immovables]


ADD CONSTRAINT [R_9] FOREIGN KEY ([TypeFund]) REFERENCES
[HouseFoundation]([TypeFund])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Owner]


ADD CONSTRAINT [R_12] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
Go

Рис 6.- Диаграмма полученной БД в MS SQL SERVER

4. Ход работы(ПО «Агентство недвижимости»)(б)


Рис 7.- Физическая модель ПО «Агентство недвижимости»

Рис 8.- Физическая модель ПО «Агентство недвижимости»

4.1- DDL скрипт создания БД для MS SQL SERVER


CREATE TABLE [Bargain]
(
[DateSale] char(18) NULL ,
[IDCustomer] integer NOT NULL ,
[IDEmployee] integer NOT NULL ,
[IDOwner] integer NOT NULL ,
[IDImmovables] varchar(20) NOT NULL
)
go

CREATE TABLE [Customer]


(
[IDCustomer] integer NOT NULL ,
[NameCustomer] varchar(20) NULL ,
[AddressCustomer] varchar(20) NULL ,
[PhoneNomber] integer NULL
)
go

CREATE TABLE [Employee]


(
[IDEmployee] integer NOT NULL ,
[NameEmployee] varchar(20) NULL ,
[PhoneNomber] integer NULL ,
[IDOwner] integer NOT NULL ,
[IDImmovables] varchar(20) NOT NULL
)
go

CREATE TABLE [HouseFoundation]


(
[TypeFund] varchar(20) NOT NULL
)
go

CREATE TABLE [Immovables]


(
[Area] integer NULL ,
[Cost] integer NULL ,
[DateList] datetime NULL ,
[DataSale] datetime NULL ,
[IDImmovables] varchar(20) NOT NULL ,
[TypeFund] varchar(20) NOT NULL
)
go

CREATE TABLE [Owner]


(
[IDOwner] integer NOT NULL ,
[NameOwner] varchar(20) NULL ,
[PhoneNomber] integer NULL ,
[IDImmovables] varchar(20) NOT NULL
)
go

CREATE TABLE [Phone]


(
[PhoneNomber] integer NOT NULL ,
[IDCity] integer NULL
)
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [XPKBargain] PRIMARY KEY CLUSTERED ([IDCustomer]
ASC,[IDEmployee] ASC,[IDOwner] ASC,[IDImmovables] ASC)
go

ALTER TABLE [Customer]


ADD CONSTRAINT [XPKCustomer] PRIMARY KEY CLUSTERED ([IDCustomer]
ASC)
go

ALTER TABLE [Employee]


ADD CONSTRAINT [XPKEmployee] PRIMARY KEY CLUSTERED ([IDEmployee]
ASC,[IDOwner] ASC,[IDImmovables] ASC)
go

ALTER TABLE [HouseFoundation]


ADD CONSTRAINT [XPKHouseFoundation] PRIMARY KEY CLUSTERED
([TypeFund] ASC)
go

ALTER TABLE [Immovables]


ADD CONSTRAINT [XPKImmovables] PRIMARY KEY CLUSTERED
([IDImmovables] ASC)
go

ALTER TABLE [Owner]


ADD CONSTRAINT [XPKOwner] PRIMARY KEY CLUSTERED ([IDOwner] ASC,
[IDImmovables] ASC)
go

ALTER TABLE [Phone]


ADD CONSTRAINT [XPKPhone] PRIMARY KEY CLUSTERED ([PhoneNomber]
ASC)
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [R_6] FOREIGN KEY ([IDCustomer]) REFERENCES
[Customer]([IDCustomer])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Bargain]


ADD CONSTRAINT [R_10] FOREIGN KEY ([IDEmployee],[IDOwner],
[IDImmovables]) REFERENCES [Employee]([IDEmployee],[IDOwner],[IDImmovables])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Customer]


ADD CONSTRAINT [R_13] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Employee]


ADD CONSTRAINT [R_11] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Employee]


ADD CONSTRAINT [R_14] FOREIGN KEY ([IDOwner],[IDImmovables])
REFERENCES [Owner]([IDOwner],[IDImmovables])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Immovables]


ADD CONSTRAINT [R_9] FOREIGN KEY ([TypeFund]) REFERENCES
[HouseFoundation]([TypeFund])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Owner]


ADD CONSTRAINT [R_12] FOREIGN KEY ([PhoneNomber]) REFERENCES
[Phone]([PhoneNomber])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

ALTER TABLE [Owner]


ADD CONSTRAINT [R_15] FOREIGN KEY ([IDImmovables]) REFERENCES
[Immovables]([IDImmovables])
ON DELETE NO ACTION
ON UPDATE NO ACTION
go

Рис 9.- Диаграмма полученной БД в MS SQL SERVER

Вам также может понравиться