Проектирование базы данных - альтернативы для значения атрибута объекта (EAV) - PullRequest
3 голосов
/ 24 мая 2010

см. Как составить таблицу продуктов для многих видов продуктов, где каждый продукт имеет много параметров для аналогичной темы.

Мой вопрос: я хочу создать базу данных, которая будет использоваться для производства различных видов продукции, где каждый продукт имеет свои (количество) параметров. потому что я хочу, чтобы серийные номера были в одной таблице для целей обзора, у меня есть проблема с этими различными параметрами.

Одним из решений может быть EAV, но у него есть свои недостатки, конечно, потому что у нас + - 5 продуктов с каждым продуктом + - 20.000 серийных номеров (записей). это выглядит немного излишним для меня ...

Я просто не знаю, как можно спроектировать базу данных так, чтобы у вас в атрибуте mastertable был атрибут, который говорит: «эй, вы можете найти детали этой записи в ТАБЛИЦЕ подробностей». 'таким образом, что вы могли бы легко запросить результаты)

В настоящее время я использую Visual Basic & Acces 2007. Но я собираюсь перейти на Visual Basic & MySQL.

спасибо за вашу помощь.

Bob

Ответы [ 2 ]

1 голос
/ 24 мая 2010

Я бы пошел с чем-то вроде этого:

product [productid, title, price, datecreated, datemodified, etc]
attribute [attributeid, title]
productattribute [productid, attributeid, value, unit]

Пример:

[product]
productid  title    price   datecreated  datemodified
1          LCD TV   99.95   2010-01-01   2010-01-01
2          Car      12356   2010-01-01   2010-01-02
3          B/W TV   12.95   1960-01-01   1960-01-01

[attribute]
attributeid  title
10           Colors
11           Dimensions
12           Passengers

[productattribute]
productid  attributeid  value  unit
1          10           16     million
1          11           32     inch
2          12           4      adults
3          10           2      colors
3          11           6      inch
0 голосов
/ 24 мая 2010

Похоже, вам, вероятно, нужно больше узнать о доступных шаблонах проектирования при работе с такого рода проблемами, поскольку не существует единого решения для всех.

Я рекомендую взять копию Шаблонов разработки корпоративных приложений , чтобы помочь вам на вашем пути. Извините, что я не могу ответить на ваш вопрос напрямую (надеюсь, кто-то еще здесь на SO) может, но я думаю, что ответ, данный в вопросе, на который вы ссылаетесь, примерно такой же хороший, как и получается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...