Здравствуйте! Создал такие таблицы: Features(параметры) f_id |f_name 1 price 2 color 5 firm features_values(свойства параметров) fv_id | f_value 1 Samsung 4 Nokia 22 black 23 white Products(товары) p_id | p_name 1 Samsung GT 2 Samsung n700 3 Nokia 900 products_features(табл.свызыв.параметры со свойствами и с товарами) id_p |p_id | f_id | fv_id 1 1 1 6 2 1 2 21 5 1 5 1 Такую структуру видел в некоторых CMS. Правильна ли такая структура? Есть по этому поводу сомнения,и запросы достаточно сложные получаются(может, правда, только для меня).
подозреваю, что у этого велосипеда не хватает одного болта, а именно поля features_values.p_id - ссылки на products. с ним таблица products_features просто становится не нужна! получится классический Entity-Atribute-Value универсальность имеет негативную сторону — неэффективность.
таблица products_features связывает другие таблицы. А на счет поля features_values.p_id - я не понял зачем оно надо.Если шо поправьте меня.
чтобы сссылаться на products ))) Добавлено спустя 2 минуты 28 секунд: а вообще забей, ты же не спрашивал совета, а хотел чтобы тебя подбодрили. твоя структура выполняет твои задачи? она хорошая!
так связь между таблицами есть: features_values.fv_id=products.fv_id AND products_features.p_id=products.p_id .Или я чета не панимаю? пока не спрашивал) При такой структуре палучаются сложные запросы к базе и я в них сильна сомневаюсь) В CMS модель EAV используется, а в интернете ее сильна критикуют. А есть EAV в книги какой-небудь шоб почитать можно было нормально?
а че так?) Нашел, то что меня интересавало на форуме sql, там, оказываеться, паднималась эта тема и не раз.