Прежде всего, извините за мой плохой английский хехехе. Мне нужна помощь, я хочу создать базу данных для веб-сайта, например, мини-Amazon.Эта база данных будет управлять всеми видами продуктов (телевизоры, автомобили, компьютеры, книги, видеоигры, карандаши, столы, штаны ...), но также каждый продукт должен иметь некоторые свойства (которые будут проиндексированы), например, если продукткнига, свойства будут что-то вроде жанра, года, автора.Если продукт - телевизор, свойства будут примерно такими же, как размер, цвет, а также год.А если продукт - автомобиль, то его свойства будут, например, год, цвет, модель.Итак, это моя идея:
- Одна таблица для управления отделами (например, электроника, книги ...)
- Одна таблица для управления категориями отделов, эта таблица будетдитя предыдущего.Если в отделе электроники, то здесь будут аудио, ТВ и видео, игры ... (каждая категория принадлежит одному отделу, отношения - это один отдел ко многим категориям)
- Одна таблица для управления продуктами (каждаятовар относится к одной категории, отношение - одна категория ко многим товарам)
- Одна таблица для управления свойствами (например, год, цвет, жанр, модель ...)
- Одна таблица для привлечения товаровсо свойствами эта таблица будет называться ProductProperties
Я не уверен, что это лучший способ, база данных будет огромной, я разработаю базу данных на MySQL.Но я думаю, что это не лучший способ, в этой статье говорится о «Абстракции базы данных: агрегация и обобщение»другими словами, общие объекты (я думаю), но этот способ устарел (70-е годы).В этой статье http://www.simple -talk.com / sql / database-Administration / ten-common-database-design-errors / в разделе «Одна таблица для хранения всех значений домена» говорится, что этоНеправильный путь ... Я говорю все это из-за таблицы ProductProperties, я не знаю, делаю ли я эту таблицу или я делаю специальные таблицы для каждого вида продуктов.
Есть ли у вас какие-либо предложения?Или у вас есть идея получше?
Заранее спасибо, позаботьтесь !!!