Я рассчитываю и создаю оценку для системы управления контрактами. Оценка включает в себя следующие данные
Пример:
product_name unit_price Quantity cost(unit_price*Quantity)
Sand 16 10 160
Cement 12 10 120
Pipes 10 10 100
-------------------------------------------------------------------------
Total cost 380
-------------------------------------------------------------------------
Здесь. Если я возьму отдельную таблицу для хранения всех деталей каждой оценки в таблице, столбцы будут выглядеть следующим образом: EstimationID | sand_unit_price | sand_Quantity | Sand_cost | Цементная_единица | Цемент_Количество | цементная стоимость | pipe_unt_price | pipe_quantity | pipe_cost | Total_cost
Я знаю, что это невозможно, потому что, если мы добавим больше материалов, будут сотни столбцов. Поэтому я попытался создать диаграмму ER и придумал следующие объекты и атрибуты:
Материалы: MID, имя_материала, unit_price
Оценка: EID, total_cost, date
Клиент: CID (и другие атрибуты, связанные с клиентом)
Я принял их отношения как следующие:
- Оценка и материалы: MN (Поскольку оценка может включать много материалов, а материал может быть во многих оценках)
2. Оценка и заказчик: 1 N (Поскольку у оценки может быть только один покупатель, но у клиента может быть несколько оценок)
Итак, таблицы выводятся следующим образом: Таблица: EID оценки | CID | total_cost | дата |
Таблица: Материалы MID | имя_материала | unit_price
Таблица: rating_materials EID | MID | Кол-во | Сумма |
* Эта таблица выше - та, которую я получил, сопоставив отношения "многие ко многим" между оценкой и материалами. Могу ли я добавить еще 2 дополнительных столбца, например «Кол-во» и «Сумма», как указано выше? Если это невозможно, где следует хранить эти данные?
Таблица: EID_customer | CID |
Могу ли я реализовать базу данных в соответствии с этими таблицами? Я должен иметь возможность обновить, удалить и выполнить поиск по определенной оценке. Если я сохранил данные оценки в нескольких таблицах, подобных этой, а не в одной, смогу ли я это сделать? Потому что мне нужен менеджер по контрактам, чтобы видеть все детали оценки, такие как отчет в единый интерфейс