Добавил:
больше работ здесь: https://github.com/alisadex Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы (Создание своей СУБД) / ППСУБДиЗ финальная версия документации.docx
Скачиваний:
4
Добавлен:
11.02.2024
Размер:
500.04 Кб
Скачать

Этап 5. Создание физической модели в PostgreSql.

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

Таблица 1. Products

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

ProductID

Идентификатор продукта

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

Name

Название продукта

VARCHAR(255)

255

-

-

3

Brand

Бренд продукта

VARCHAR(100)

100

-

-

4

Type

Тип продукта

VARCHAR(50)

50

-

-

5

Price

Цена продукта

DECIMAL(10, 2)

-

2

-

6

Description

Описание продукта

TEXT

-

-

-

7

Ingredients

Ингредиенты продукта

TEXT

-

-

-

8

Characteristics

Характеристики продукта

TEXT

-

-

-

Таблица 2. Customers

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

CustomerID

Идентификатор клиента

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

Name

Имя клиента

VARCHAR(255)

255

-

-

3

ContactInfo

Контактная информация клиента

TEXT

-

-

-

4

Address

Адрес клиента

TEXT

-

-

-

Таблица 3. ProductDetails

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

ProductID

Идентификатор продукта

INT PRIMARY KEY REFERENCES Products(ProductID)

-

-

Да (Primary Key, Foreign Key)

Внешний ключ (ссылается на Products)

2

Price

Цена продукта

DECIMAL(10, 2)

-

2

-

3

Ingredients

Ингредиенты продукта

TEXT

-

-

-

4

Characteristics

Характеристики продукта

TEXT

-

-

-

Таблица 4. Suppliers

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

SupplierID

Идентификатор поставщика

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

Name

Название поставщика

VARCHAR(255)

255

-

-

3

ContactInfo

Контактная информация поставщика

TEXT

-

-

-

4

DeliveryTerms

Условия поставки от поставщика

TEXT

-

-

-

Таблица 5. Orders

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

OrderID

Идентификатор заказа

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

CustomerID

Идентификатор клиента

INT REFERENCES Customers(CustomerID)

-

-

Foreign Key

(ссылается на Customers)

3

ProductID

Идентификатор продукта в заказе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

4

Quantity

Количество продуктов в заказе

INT

-

-

-

5

Price

Цена заказа

DECIMAL(10, 2)

-

2

-

6

DeliveryStatus

Статус доставки заказа

VARCHAR(50)

50

-

-

7

PaymentStatus

Статус оплаты заказа

VARCHAR(50)

50

-

-

Таблица 6. OrderDetails

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

OrderID

Идентификатор заказа

INT REFERENCES Orders(OrderID)

-

-

Foreign Key

(ссылается на Orders)

2

ProductID

Идентификатор продукта в заказе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

3

Quantity

Количество продуктов в заказе

INT

-

-

Нет

4

Price

Цена заказа

DECIMAL(10, 2)

-

2

Нет

Таблица 7. WarehouseInventory

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

ItemID

Идентификатор товара на складе

SERIAL PRIMARY KEY

-

-

Primary Key

2

ProductID

Идентификатор продукта на складе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

3

AdminID

Индентификатор администратора

REFERENCES AdminData(AdminID)

-

-

Foreign Key

(ссылается на AdminData)

4

Quantity

Количество товара на складе

INT

-

-

Нет

5

Location

Местонахождение товара на складе

VARCHAR(100)

100

-

Нет

Таблица 8. Sales and Reports

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

ReportID

Идентификатор отчета

SERIAL PRIMARY KEY

Date: DATE

-

-

Да (Primary Key)

2

ProductID

Идентификатор продукта на складе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

3

Date

Дата создания отчета

DATE

-

-

Нет

4

Revenue

Выручка от продаж

DECIMAL(10, 2)

-

2

Нет

5

SoldProducts

Проданные продукты

TEXT

-

-

Нет

Таблица 9. Marketing and Promotions

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

PromotionID

Идентификатор маркетинговой акции

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

ProductID

Идентификатор продукта на складе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

3

Name

Название маркетинговой акции

VARCHAR(255)

255

-

-

43

Description

Описание маркетинговой акции

TEXT

-

-

-

4

Cost

Стоимость маркетинговой акции

DECIMAL(10, 2)

-

2

-

Таблица 10. Employees

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

EmployeeID

Идентификатор сотрудника

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

ProductID

Идентификатор продукта на складе

INT REFERENCES Products(ProductID)

-

-

Foreign Key

(ссылается на Products)

3

AdminID

Индентификатор администратора

REFERENCES AdminData(AdminID)

-

-

Foreign Key

(ссылается на AdminData)

2

Name

Имя сотрудника

VARCHAR(255)

255

-

Нет

3

Role

Роль сотрудника

VARCHAR(100)

100

-

Нет

4

ContactInfo

Контактная информация сотрудника

TEXT

-

-

Нет

5

WorkSchedule

Рабочий график сотрудника

TEXT

-

-

Нет

Таблица 11. AdminData

N

Имя поля

Подпись поля

Тип поля

Длина поля

Число после запятой

Тип поля

1

AdminID

Идентификатор администратора

SERIAL PRIMARY KEY

-

-

Да (Primary Key)

2

UserName

Имя пользователя администратора

VARCHAR(255)

255

-

Нет

3

Password

Пароль администратора

VARCHAR(255)

255

-

Нет

4

AccessLevel

Уровень доступа администратора

VARCHAR(50)

50

-

Нет

Физическая модель базы данных представлена на рисунке 3:

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