1. Составить реляционные отношения для различных П...
Создано: 21 сентября 2026 г.
Отвечено с использованием GPT-5.6 Thinking от Chat01
Создано: 21 сентября 2026 г.
Отвечено с использованием GPT-5.6 Thinking от Chat01
Ниже — готовый вариант оформления задания с реляционными отношениями, первичными и внешними ключами и примерами таблиц.
:::writing{variant="document" id="58321" title="Реляционные отношения для предметных областей"}
Для предметной области «Отдел кадров» создадим три отношения:
ДОЛЖНОСТИ (Код_должности, Название_должности, Оклад)
| Код_должности | Название_должности | Оклад |
|---|---|---|
| 1 | Директор | 120000 |
| 2 | Менеджер | 80000 |
| 3 | Бухгалтер | 75000 |
| 4 | Программист | 90000 |
Первичный ключ (PK): Код_должности.
ПОДРАЗДЕЛЕНИЯ (Код_подразделения, Название_подразделения)
| Код_подразделения | Название_подразделения |
|---|---|
| 10 | Администрация |
| 20 | Бухгалтерия |
| 30 | Отдел кадров |
| 40 | IT-отдел |
Первичный ключ (PK): Код_подразделения.
СОТРУДНИКИ (Табельный_номер, ФИО, Дата_рождения, Код_должности, Код_подразделения)
| Табельный_номер | ФИО | Дата_рождения | Код_должности | Код_подразделения |
|---|---|---|---|---|
| 101 | Иванов И.И. | 1985-03-14 | 1 | 10 |
| 102 | Петрова А.С. | 1990-07-20 | 3 | 20 |
| 103 | Сидоров П.В. | 1995-11-05 | 4 | 40 |
| 104 | Смирнова Е.А. | 1992-04-18 | 2 | 30 |
Первичный ключ (PK): Табельный_номер.
Внешние ключи (FK):
Код_должности → ДОЛЖНОСТИ.Код_должности;Код_подразделения → ПОДРАЗДЕЛЕНИЯ.Код_подразделения.ДОЛЖНОСТИ 1 : M СОТРУДНИКИ
ПОДРАЗДЕЛЕНИЯ 1 : M СОТРУДНИКИ
То есть одна должность может соответствовать нескольким сотрудникам, и в одном подразделении может работать несколько сотрудников.
Для магазина создадим отношения:
ТОВАРЫ (Код_товара, Название_товара, Цена, Единица_измерения)
| Код_товара | Название_товара | Цена | Единица_измерения |
|---|---|---|---|
| 1 | Молоко | 90 | шт. |
| 2 | Хлеб | 55 | шт. |
| 3 | Сахар | 110 | кг |
| 4 | Чай | 180 | уп. |
Первичный ключ (PK): Код_товара.
ПОСТАВЩИКИ (Код_поставщика, Название_поставщика, Телефон, Адрес)
| Код_поставщика | Название_поставщика | Телефон | Адрес |
|---|---|---|---|
| 201 | ООО «Продукт» | +7-900-111-11-11 | ул. Ленина, 10 |
| 202 | ООО «Снабжение» | +7-900-222-22-22 | ул. Мира, 15 |
| 203 | ООО «ТоргСервис» | +7-900-333-33-33 | ул. Советская, 8 |
Первичный ключ (PK): Код_поставщика.
ПОСТАВКИ (Код_поставки, Код_товара, Код_поставщика, Дата_поставки, Количество, Цена_поставки)
| Код_поставки | Код_товара | Код_поставщика | Дата_поставки | Количество | Цена_поставки |
|---|---|---|---|---|---|
| 1001 | 1 | 201 | 2026-09-01 | 100 | 65 |
| 1002 | 2 | 202 | 2026-09-02 | 150 | 35 |
| 1003 | 3 | 201 | 2026-09-05 | 80 | 82 |
| 1004 | 4 | 203 | 2026-09-06 | 60 | 135 |
Первичный ключ (PK): Код_поставки.
Внешние ключи (FK):
Код_товара → ТОВАРЫ.Код_товара;Код_поставщика → ПОСТАВЩИКИ.Код_поставщика.ТОВАРЫ 1 : M ПОСТАВКИ
ПОСТАВЩИКИ 1 : M ПОСТАВКИ
Отношение «Поставки» связывает товары и поставщиков. Один поставщик может поставлять множество товаров, а один товар может поставляться различными поставщиками.
Создадим следующие основные отношения:
Также для корректного представления участия сотрудников в нескольких проектах целесообразно добавить отношение Участие_в_проектах.
ОТДЕЛЫ (Код_отдела, Название_отдела)
| Код_отдела | Название_отдела |
|---|---|
| 1 | Отдел проектирования |
| 2 | Отдел разработки |
| 3 | Экономический отдел |
| 4 | Отдел тестирования |
Первичный ключ (PK): Код_отдела.
СОТРУДНИКИ (Код_сотрудника, ФИО, Должность, Код_отдела)
| Код_сотрудника | ФИО | Должность | Код_отдела |
|---|---|---|---|
| 501 | Орлов А.А. | Инженер | 1 |
| 502 | Кузнецова М.В. | Программист | 2 |
| 503 | Волков Д.С. | Экономист | 3 |
| 504 | Морозова Н.А. | Тестировщик | 4 |
Первичный ключ (PK): Код_сотрудника.
Внешний ключ (FK):
Код_отдела → ОТДЕЛЫ.Код_отдела.
ПРОЕКТЫ (Код_проекта, Название_проекта, Дата_начала, Дата_окончания, Код_отдела)
| Код_проекта | Название_проекта | Дата_начала | Дата_окончания | Код_отдела |
|---|---|---|---|---|
| 301 | Информационная система | 2026-01-15 | 2026-12-20 | 2 |
| 302 | Проект нового офиса | 2026-03-01 | 2026-10-30 | 1 |
| 303 | Система учета затрат | 2026-04-10 | 2027-01-15 | 3 |
Первичный ключ (PK): Код_проекта.
Внешний ключ (FK):
Код_отдела → ОТДЕЛЫ.Код_отдела.
Так как один сотрудник может участвовать в нескольких проектах, а над одним проектом может работать несколько сотрудников, между сотрудниками и проектами существует связь многие-ко-многим (M:N).
Для ее реализации создается дополнительное отношение:
УЧАСТИЕ_В_ПРОЕКТАХ (Код_сотрудника, Код_проекта, Роль)
| Код_сотрудника | Код_проекта | Роль |
|---|---|---|
| 501 | 302 | Главный инженер |
| 502 | 301 | Разработчик |
| 504 | 301 | Тестировщик |
| 503 | 303 | Экономист |
| 502 | 303 | Разработчик |
Здесь используется составной первичный ключ:
PK: (Код_сотрудника, Код_проекта).
Внешние ключи:
Код_сотрудника → СОТРУДНИКИ.Код_сотрудника;Код_проекта → ПРОЕКТЫ.Код_проекта.ОТДЕЛЫ 1 : M СОТРУДНИКИ
ОТДЕЛЫ 1 : M ПРОЕКТЫ
СОТРУДНИКИ M : N ПРОЕКТЫ
Связь M:N реализована с помощью таблицы УЧАСТИЕ_В_ПРОЕКТАХ.
| Предметная область | Отношение | Первичный ключ (PK) | Внешние ключи (FK) |
|---|---|---|---|
| Отдел кадров | Должности | Код_должности | — |
| Отдел кадров | Подразделения | Код_подразделения | — |
| Отдел кадров | Сотрудники | Табельный_номер | Код_должности, Код_подразделения |
| Магазин | Товары | Код_товара | — |
| Магазин | Поставщики | Код_поставщика | — |
| Магазин | Поставки | Код_поставки | Код_товара, Код_поставщика |
| Проектная организация | Отделы | Код_отдела | — |
| Проектная организация | Сотрудники | Код_сотрудника | Код_отдела |
| Проектная организация | Проекты | Код_проекта | Код_отдела |
| Проектная организация | Участие_в_проектах | Код_сотрудника + Код_проекта | Код_сотрудника, Код_проекта |
Для каждой предметной области были сформированы реляционные отношения. Первичные ключи обеспечивают уникальную идентификацию каждой записи в таблицах, а внешние ключи устанавливают связи между отношениями и обеспечивают ссылочную целостность базы данных. :::
Если это лабораторная по базам данных, этот вариант уже можно использовать как основу для отчёта.