Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

как правильно построить базу данных

13K
27 июня 2008 года
ghostspock
50 / / 27.06.2008
Мне необходимо построить базу данных, где в одной из таблиц находятся элементы с разным числом свойств, но относящиеся к одному классу( как например модели сотовых телефонов). Подскажите, пожалуйста, как правильно организовать такую базу данных.
2
27 июня 2008 года
squirL
5.6K / / 13.08.2003
например - создать отдельные таблицы для моделей телефонов, имеющих одинаковый набор свойств (телефоны одной марки).
1
27 июня 2008 года
kot_
7.3K / / 20.01.2000
правильно - это только в школе можно что либо сделать. БД строиться под задачу. Если разное число свойств - заначит создаеться таблица-спарвочник где храниться идентификатор объекта, и другие общие х-ки - типа производитель, модель, серийный номер. Создаеться таблица-справочник типов свойств - где храниться уникальный идентификатор свойства и его названия. И таблица собственно где эти свойства храняться. Выборка производиться из таблицы телефонов с использованием LEFT OUTER JOIN.
Это как один вариант. Но все зависит от задачи - что нужно, какая степень детализации и пр. Может имеет смысл просто сделать одну таблицу и не париться.
332
27 июня 2008 года
Valiant
416 / / 27.09.2004
Цитата: squirL
например - создать отдельные таблицы для моделей телефонов, имеющих одинаковый набор свойств (телефоны одной марки).



Как то не рационально получается!
Проще сделать одну таблицу с количеством столбцов равным количеству свойств.

Цитата: kot_
правильно - это только в школе можно что либо сделать. БД строиться под задачу. Если разное число свойств - заначит создаеться таблица-спарвочник где храниться идентификатор объекта, и другие общие х-ки - типа производитель, модель, серийный номер. Создаеться таблица-справочник типов свойств - где храниться уникальный идентификатор свойства и его названия. И таблица собственно где эти свойства храняться. Выборка производиться из таблицы телефонов с использованием LEFT OUTER JOIN.
Это как один вариант. Но все зависит от задачи - что нужно, какая степень детализации и пр. Может имеет смысл просто сделать одну таблицу и не париться.


Согласен!

13K
27 июня 2008 года
ghostspock
50 / / 27.06.2008
Спасибо, начинает проясняться. Однако одна таблица мне не подойдет ( сам сначала так хотел), слишком большое количество свойств... так как много видов продукции с пересекающимися свойствами. Думаю лучше будет сделать несколько таблиц со свойствами отдельных видов продукции, и таблицы которые содержат все свойства и все виды продукции отдельно.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог