Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прошу оценить структуру... / 25 сообщений из 43, страница 1 из 2
26.05.2003, 17:04
    #32168780
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
...Чем больше нахожусь в форуме, тем меньше курю - невозможно оторваться:-))).

Вопросом мучаюсь давно, но духу не хватало спросить. Я не из крутых программеров, потому сомнения меня гложут (или глодут...) по поводу созданной мною же структурки базы данных. База работает, все ОК, но кажется мне не так оптимально все выстроенно там, как могло быть. А именно смущает меня схема данных, т.е. завязка таблиц друг с другом. Пока проектировал - трижды делал совершенно разные схемы, а когда закончил и поставил, то осталось ощущение недоделанности и успокоится немогу. Кому интересно, изложу поподробней.
...
Рейтинг: 0 / 0
26.05.2003, 17:07
    #32168784
Zenia
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
мне...
...
Рейтинг: 0 / 0
26.05.2003, 17:47
    #32168848
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
...ну тогда слушай... сам нарвался...:-)))

Было это так. Четыре основных таблицы: Клиенты, Менеджеры, Объекты и ЗадачиПоОбъектам. У каждого менеджера есть несколько клиентов, соотв-но один-ко-многим. У каждого клиента - свои объекты, соотв-но опять один-ко-многим. Ну и у каждого объекта свои задачи, то есть в результате задачи, которые должен выполнить менеджер, у которого в списках имеется клиент, работающий с этим объектом. Это в простом варианте и без доп. условий. Здесь, как видите, все четко, без проблем (для многих из вас как 2х2). Когда же появились доп.условия, пришлось все перелопатить наново.
Первое. Оказалось, что возможны три типа объектов:
1. Объект, у которого сразу определен клиент.
2. Объект, у которого клиент определяется только после
так называемого тендера, в котором учавствуют несколько клиентов.
3. Свободный объект (свободный от клиента, пока; но менеджер уже
работает с ним, то бишь задачи уже ставятся и выполняются).

Две последних категории объектов в будущем обязательно переходят в первую, то есть конечное состояние объекта - п.1.
В результате всего этого, пришлось создать таблицу (назовем её ГрупТаб) с составным ключом, типа Кл_id + Об_id и булевым полем "В работе", что помогло решить вопрос с тендерами, но тогда как отслеживать свободные объекты? Как прописать отдельно фамилию менеджера (мен) к свободному объекту, а потом, на основании этой информации предложить меновский список клиентов и внести новую запись в объединенную таблицу? пришлось добавить в ГрупТаб ключ Мен_id и вся схема выглядела так: в центре ГрупТаб, а к ней по ключам прилинкованы три таблицы - Мен, Клиенты и Объекты. А для таблицы Задачи связь по полю счетчика записей в ГрупТаб(поскольку теперь имелся смысл постановки задач для каждой строки таблицы ГрупТаб, то бишь и для менеджеров, клиенты которых учавствовали или учавствуют в тендере). В результате получилось, что в одной записи этой таблицы (ГрупТаб) может отсутствовать наименование Клиента, в другой - ФИО Мена, и т.д. Не смог ничего больше придумать, оставил как есть. Слава Богу, вытащить информацию о клиентах и задачах Мена смог на форму и в отчет, но блин, нескладно как-то все это.
Все ли написал? Если хватит терпения разбираться, буду только рад. А если нет, да и Бог с ним.
...
Рейтинг: 0 / 0
26.05.2003, 18:06
    #32168883
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
На последний абзац меня не хватило.
Я вижу тут 4 таблицы, но другие:
1. Люди, организации
2. Типы (ID, Id_Parent, Название) - пока два значения "менеджер" и "Клиент"
3. Объекты (ID, Название)
4. Люди-объекты (ID, id_люди(fk),ID_объекты(FK),Задача)
...
Рейтинг: 0 / 0
26.05.2003, 18:17
    #32168895
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Спасибо за отклик. Только вот заковыка в том, что потом, каждому свободному объекту все равно должен приписан быть клиент, то бишь связка мен-объект временная, пока клиент не определен. Но в то же время вся инфа должна оставаться в базе (т.е. инфа о том, кто участвовал в тендере, какой объект был свободен и т.д.). По вышеуказанной схеме так не получается...
...
Рейтинг: 0 / 0
26.05.2003, 18:22
    #32168901
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
...у меня получился вот такой вид таблицы ГрупТаб:

Код: plaintext
1.
2.
3.
4.
5.
  Кл1  -  (null)  -  Об1
  Кл1  -  (null)  -  Об2
 (null)  -  Men1  -  Об3
  Кл2  -  (null)  -  Об4
  Кл3  -  (null)  -  Об4
 (null)  -  Men2  -  Об5
...
Рейтинг: 0 / 0
26.05.2003, 18:25
    #32168909
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
...где:

об3, бо5 - свободные объекты;
об1, об2 - обычные объекты;
об4 - проходящие по тендеру...
...
Рейтинг: 0 / 0
26.05.2003, 18:26
    #32168913
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Ну так как по вашему, это нормально? Аксакалы?
...
Рейтинг: 0 / 0
26.05.2003, 18:40
    #32168935
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
К концу дня соображаю не очень, поэтому до конца не въехал в постановку задачи.
Могу сказать общей фразой:
структура должна быть такая, чтобы потом, когда пойдет анализ, нужно было выбирать информацию из одной таблицы на каждую фнукцию.
.....
бр-р-р ни фига не понятно, попробую на примере
.....
Если есть объекты, то информация по ним должна выбираться из одной таблицы + связанные по ключам.
Если же одна и таже информация (с точки зрения пользователя) будет хранится в разных таблицах, замучаешься ее вылавливать в отчетах и других средствах анализа.
А тут, как я понял (или может не правильно понял?) одна и та же информация будет хранится в разных таблицах, т.е. структура не оптимальна.
...
Рейтинг: 0 / 0
26.05.2003, 18:43
    #32168937
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
То то и оно, что и мне так кажется, но я не могу никак представить себе связь этих данных в другом виде... Как ни пытаюсь - все одно прихожу к такому виду. Потому и прекратил попытки и скинул базу.
...
Рейтинг: 0 / 0
26.05.2003, 18:45
    #32168939
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
G&P
"Но в то же время вся инфа должна оставаться в базе (т.е. инфа о том, кто участвовал в тендере, какой объект был свободен и т.д"
Что за инфа? Нельзя ли в таком случае поподробнее о том, что с этими объектами происходит и что про них должно хранится в БД?
...
Рейтинг: 0 / 0
26.05.2003, 18:50
    #32168948
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
И вообще, попробуйте лучше покороче саму проблему описать без всяких таблиц и Ваших решений. А то как-то не асе ясно...
...
Рейтинг: 0 / 0
26.05.2003, 18:56
    #32168952
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Попробую подробней о самих таблицах:

1таб. "Клиенты": cl_id (ключевое), men_id(внешний ключ для определения - какой клиент к какому мену относится).
2таб. "Менеджеры": men_id(ключевое), lname, fname,.......
3таб. "Объекты": obj_id(ключевое), name_obj ,....
4таб. "Задачи": task_id(ключевое), task, result, .......
5таб. "ГрупТаб": groop_id(ключевое), cl_id, men_id, obj_id, task_id - эти четыре связаны с соответств. таблицами.

Сама реализация этого вопроса возможна в другом исполнении или нет? Думается мне, что оптимальностью в моем варианте и не пахнет...
...
Рейтинг: 0 / 0
26.05.2003, 19:02
    #32168959
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
>И вообще, попробуйте лучше покороче саму проблему описать без всяких таблиц и Ваших решений

Проблема вкратце в том, что нужна определенная информация о задачах и результатах их выполнения определенным менеджером по определенным объектам (как по свободным, т.е. пока без клиента, так и по обычным, плюс еще по тем, которые проходят по тендеру). То есть это не проблема, а задача, а проблема именно в разнотипности объектов, которые к тому же могут принимать в конце концов вид обычного объекта со своим клиентом и менеджером... Уф-ф... Ладно, не парьтесь... Видать слоган мой черезчур сложен...
...
Рейтинг: 0 / 0
26.05.2003, 19:09
    #32168962
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
"Только вот заковыка в том, что потом, каждому свободному объекту все равно должен приписан быть клиент, то бишь связка мен-объект временная, пока клиент не определен"
В моей схеме 4 таблица реализует связь многие ко многим. Если в ней нет записей по объекту - значит он ни к кому не прикреплен. Если сделать поле "задача" как fk из таблицы "задачи", то в ней можно будет хранить любую информацию, касающюся отношениий "объект" и "Люди". Пример.
Имеем след данные

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
    Задачи
 id           Задача
   1           Прикрепленные менеджеры
   2           Участники тендера
   3           Победитель тендера  
  
  Люди
 id         Название
  1           Сидоров
  2            Рога и копыта
  3            Копыта и рога


После опреаций "прикрепление менеджера к объекту", "Регистрация учатников тендера" и "Определение победителя тендера" по объекту 1 в таблице "Люди-объекты" будет следующее:

Код: plaintext
1.
2.
3.
4.
5.
6.
       Люди-объекты
  id   id_люди  id_объекты id_задачи
   1         1                1               1 
   2         2                1               2 
   3         3                1               2 
   4         2                1               3 
...
Рейтинг: 0 / 0
26.05.2003, 19:14
    #32168964
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
да, но при этом если ты поставишь в эту таблицу людя типа менеджер, то никогда больше не узнаешь, с каким клиентом работает этот объект. Дело в том, что менеджер как посредник между объектом и клиентом. И если клиента пока нет, то он все равно в конце концов будет, а у тебя так не получается...
...
Рейтинг: 0 / 0
26.05.2003, 19:15
    #32168966
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Мне кажется, что главная сложность в том, что недостаточно четко поставлена задача.
...
Рейтинг: 0 / 0
26.05.2003, 19:16
    #32168967
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Ну вот же он там, Сидоров, типа "менеджер", первой строкой...
...
Рейтинг: 0 / 0
26.05.2003, 19:17
    #32168968
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
Хорошо, завтра я попробую сконцентрировать свою волю и все что нужно для постановки четкой задачи... До завтра.
...
Рейтинг: 0 / 0
26.05.2003, 19:18
    #32168969
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
А как ты узнаешь потом, какому своему клиенту Сидоров отдал этот объект? И какие у этого Сидорова вообще клиенты?
...
Рейтинг: 0 / 0
26.05.2003, 19:19
    #32168970
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
...у каждого мена куча клиентов, которым они рассовывают свои объекты...
...
Рейтинг: 0 / 0
26.05.2003, 19:20
    #32168971
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
G&P
Успехов, хотя уместнее было бы обсудить эти вопросы в форуме "Проектирование БД" - там и народ встречается более основательный, чем здесь (не хочу никого обидеть)
...
Рейтинг: 0 / 0
26.05.2003, 19:22
    #32168974
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
А вот это ты зря. Я весьма рад, что слышу здесь постоянно Сенина Виктора, Лоха Позорного, Владимир Саныча, Хама Трамвайного и т.д.. Многим из них здесь обязан.
...
Рейтинг: 0 / 0
26.05.2003, 19:29
    #32168976
wara
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
G&P,
...основательных в плане постановки задач и проектирования структуры, а не в вопросах программирования в Access. (Ничего не имею против упомянутых Вами уважаемых людей)
...
Рейтинг: 0 / 0
26.05.2003, 19:33
    #32168981
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прошу оценить структуру...
От имени Владимира Саныча подтверждаю, что тот форум для этого вопроса гораздо подходявее. Хотя бы потому, что там люди настроены на вопросы определенного типа.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прошу оценить структуру... / 25 сообщений из 43, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]