Подскажите, пожалуйста...

Модераторы: kdv, CyberMax

Закрыто
Tron
Сообщения: 1
Зарегистрирован: 25 июн 2007, 16:28

Подскажите, пожалуйста...

Сообщение Tron » 25 июн 2007, 16:30

Приветствую всех!
Подскажите плиз, как правильно решить задачу, чтобы было красиво, функционально , и чтобы правила нормализации соблюлись. Очень нужно.
Задача такая:

есть организации, есть типы организации, связаны один ко многим, т.е. в таблице организаций есть вторичный ключ на таблицу типов организаций. Далее в зависимости от типа организации у организации должны быть несколько параметров, например путь в директорию где лежат прайс-листы, признак активности, маски файлов и.т.д., причём параметры должны быть разными в зависимости от типа организации. На первый взгляд все эти параметры можно оформить в таблице организаций путём добавления полей, а если какиенибудь параметры в будущем появятся, то нужно будет добавлять поля в таблицу организаций. Мне этот вариант не нравится. Есть другой путь, создать таблицу свойств типов, где будут храниться все типы свойств организаций и создать в этой таблице вторичный ключ на таблицу типов организаций, далее создать кросс-таблицу в которой соединить таблицу организаций и таблицу свойств. Мне этот вариант не нравиться тем, что в коде приложения придётся ссылаться на конкретное чило , например 5 или 6 (это ключ в кросс-таблице), чтобы узнать,например, путь к файлам прайс-листов для какойнить организации, что не совсем правильно..потомучто эту запись могут удалить, и тогда придётся переделывать при ложение, но зато соблюдается нормализация.
Больше мне ничего в голову не приходит..

Может матёрые эксперты поделяться как они подобные задачи решают ???

Спасибо всем.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 25 июн 2007, 16:46

см. дискуссию в топике на sql.ru

http://www.sql.ru/forum/actualthread.aspx?tid=445026

те же самые советы - читать книги.

насчет варианта 2 - да, фиговатый, но "запись могут удалить" - не смогут, если FK прописать, что при нормальном проектировании само собой разумеется.

Закрыто