SQL

Добрый день! Нужен взгляд специалиста в области СУБД. Буду создавать базу данных комплектующих пк.

Дима Дима
Дима Дима
834
Обе схемы содержат ошибки.
Ошибки на второй схеме:
- почему каждый компонент может поставлять только один поставщик?
- атрибут, который называется "код сборки", вероятно должен называться "код сборщика", и таблица "компоновщики" должна называться "сборщики" (а лучше - "сборщик")
- зачем нужны таблицы "код_фирмы_БП", "код_фирмы_кул"? Почему таблицы блоков питания, кулеров и корпусов не ссылаются на таблицу Фирмы?
- в компьютере может быть несколько деталей одного типа, например дисков и кулеров. Модулей оперативной памяти часто ставят две штуки одинаковых. Монитор обычно не считается частью сборки. Поэтому лучше хранить сборку как набор строк, а не столбцов. Думаю, лучше сделать общую таблицу для всех комплектующих с общими атрибутами, плюс дополнительные таблицы с особыми параметрами.
- цена комплектующих может меняться. Непонятно, что с этим делать. Тут надо учитывать назначение этой БД, зачем хранится цена.
Сергей Мельников
Сергей Мельников
58 065
Лучший ответ
Дима Дима Спасибо большое. Можно ли с вами связаться как нибудь по почте или скайпу?
Поддерживаю деда. Уж про фирму это же сразу бросается в глаза.
И вообще можно не заморачиваться и забить просто Деталь, тип (процессор, память и др) и др поля тупо которые вообще нужны. А управление доступом к полям вести из кода приложения или сайт это будет. Вот и все, до простого тупо можно сделать базу данных. Если нужен удобный поиск, то можно вычисляемое поле сделать, которое одной строкой будет основные характеристики хранить как обычно принято в простейших прайсах что делают в зкселе.
NA
Nurlybek Ayapov
60 722