Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Покритикуйте структуру БД / 25 сообщений из 37, страница 1 из 2
13.07.2009, 13:36
    #36086786
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Покритикуйте пожалуйста структуру БД.
Схема во вложенном файле =)
...
Рейтинг: 0 / 0
13.07.2009, 14:02
    #36086865
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Покритикуйте пожалуйста структуру БД.

Было бы неплохо формализуемую предментную область описать...

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
13.07.2009, 16:07
    #36087222
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Kirill Razuvaev
>> Покритикуйте пожалуйста структуру БД.

Было бы неплохо формализуемую предментную область описать...



Это краткое описание ? =)
...
Рейтинг: 0 / 0
13.07.2009, 16:46
    #36087328
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Это краткое описание ?
Да. Степень краткости обычно обратно пропорциональна результату
обсуждения... :-)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
13.07.2009, 16:57
    #36087367
Senya_L
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Kirill Razuvaev
>> Это краткое описание ?
Да. Степень краткости обычно обратно пропорциональна результату
обсуждения... :-)

А не наоборот? :)
...
Рейтинг: 0 / 0
13.07.2009, 17:08
    #36087398
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Система планирования и учёта. направленная на строительство. Что то вроде MS Project только очень маленькая )))

TBL_BRIGADE - Таблица бригад рабочих
TBL_BRIGADE_WORKERS_TREE - Дерево привязки рабочих к бригадам
TBL_COUSTS - таблица затрат
TBL_GRAPH - Основная таблица. Хранятся задачи и их сроки.
TBL_GRAPH_BRIGADE_TREE - Таблица привязки бригад к задачам
TBL_GRAPH_MASH_TREE - Таблица привязки техники к задачам
TBL_GRAPH_RESOURCES_TREE - Таблица привязки материалов к задачам
TBL_GROUP_COUSTS - Таблица групп затрат
TBL_OBJECT_LIST - Список строительных объектов
TBL_RESOURCES_EI - Единицы измерения (м,м2,м3,кг,тн...)
TBL_RESOURCES_TYPE - Типы материалов
TBL_WORKERS - Таблица рабочий
TBL_USERS - Таблица пользователей системы
TBL_USERS_DEPARTMENTS - Список отделов для пользователей
TBL_USERS_POSTS - Должности пользователей
TBL_USERS_ROLE - Пользовательские роли
TBL_USERS_ROLE_ATRIB - Атрибуты для роли
TBL_WORKERS_POSTS - Должности рабочих
...
Рейтинг: 0 / 0
13.07.2009, 17:35
    #36087467
proposed amendment
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
для начала натравите на список таблиц любой английский спеллчекер (это ведь английский?)
...
Рейтинг: 0 / 0
14.07.2009, 09:04
    #36088122
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Неужели нет никаких косяков ? =)
Тогда спрошу )))
Как организовать хранение и вывод суммарных задач ? как в MS Project ?
...
Рейтинг: 0 / 0
14.07.2009, 15:36
    #36089178
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Неужели нет никаких косяков ? =)
Вообще-то, я имел ввиду словесное описание задачи. Тем более, что не все
видели MS Project.
Что бросилось в глаза:
1. Осмысленные названия это хорошо - но в пределах разумного количества
символов, на мой взгляд - не более 12ти.
2. Смысл отдельного ПК ID_TREE в TBL_BRIGADE_WORKERS_TREE?
3. Получается двоякая связь бригады с объектом TBL_BRIGADE -
TBL_OBJECTS_LIST и
TBL_BRIGADE - TBL_GRAPH_BRIGADE_TREE - TBL_GRAPH - TBL_OBJECTS_LIST.
Рискуете получить неоднозначность.
4. TBL_GRAPH_MASH-TREE - "Таблица привязки техники к задачам" - по
определению не может иметь только один внешний ключ.
5. Не ясен смысл связи TBL_GRAPH - "Основная таблица. Хранятся задачи и их
сроки." и TBL_RESOURCES_EI - "Единицы измерения".
6. Обычно не делают без особой нужды отдельные таблицы для аналогичных
сущностей - "Должности рабочих" и "Должности пользователей", удобнее один
справочник, в котором можно флагами разделить рабочих от служащих.

Хватит. Устал писать...


>> Как организовать хранение и вывод суммарных задач ? как в MS Project ?
Есть такие страшные слова - "отчеты", "выборки", "запросы"... Без них и MSP
не обходится.


P.S. Если мы так проектируем учет - то страшно подумать, как строим... :-)))

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
14.07.2009, 16:50
    #36089430
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Kirill Razuvaev
>> Неужели нет никаких косяков ? =)
Вообще-то, я имел ввиду словесное описание задачи. Тем более, что не все
видели MS Project.

Есть список объектов. По каждому объекту есть список работ. По каждому виду работы есть сроки(начало и конец), объём работы, зарплата рабочих (привязка бригад и планируется ещё несколько таблиц для привязки норм зарплат), материалы(таблица материалов) и строительная техника (тоже привязка таблицы) и ещё сегодня добавил поле длительность(кол-во дней).
Всё это выглядит как на прикреплённой картинке

авторСмысл отдельного ПК ID_TREE в TBL_BRIGADE_WORKERS_TREE?
Я просто не успел удалить табличку ID_TREE =)

автор3. Получается двоякая связь бригады с объектом TBL_BRIGADE -
TBL_OBJECTS_LIST и
TBL_BRIGADE - TBL_GRAPH_BRIGADE_TREE - TBL_GRAPH - TBL_OBJECTS_LIST.
Рискуете получить неоднозначность.
Я не могу удалить связь TBL_BRIGADE - TBL_GRAPH_BRIGADE_TREE - TBL_GRAPH - TBL_OBJECTS_LIST
Но и TBL_BRIGADE - TBL_OBJECTS_LIST тоже вроде не удалить.
Т.К. первый пользователь при создании бригады будет привязывать её к объекту потом следующий пользователь получит список выделенных ему бругад и только после этого будет раскидывать их по работам!
Даже не знаю что и делать =(
автор4. TBL_GRAPH_MASH-TREE - "Таблица привязки техники к задачам" - по
определению не может иметь только один внешний ключ.
Да действительно что то я поспешил =)
Надо полностью переделывать эту связь и добавлять таблички.
Что бы ещё учесть что бы не получилось так что один кран одновременно работал на двух объектах )))
автор5. Не ясен смысл связи TBL_GRAPH - "Основная таблица. Хранятся задачи и их
сроки." и TBL_RESOURCES_EI - "Единицы измерения".
Ну надеюсь после скриншота станет понятно =)
автор6. Обычно не делают без особой нужды отдельные таблицы для аналогичных
сущностей - "Должности рабочих" и "Должности пользователей", удобнее один
справочник, в котором можно флагами разделить рабочих от служащих.

А очень плохо использовать это в двух табличках ?
Просто хотел ограничить доступ пользователей к редактированию таблиц TBL_USERS, TBL_USERS_POSTS, TBL_USERS_DEPARTMENTS, TBL_USERS_ROLE, TBL_USERS_ROLE_ATRIB
авторЕсть такие страшные слова - "отчеты", "выборки", "запросы"... Без них и MSP
не обходится.
Да я это понимаю... =)
Просто думаю как хранить суммарные задачи в базе.
Суммарные задачи это задачи в скриншоте которые выделенные жирным!
Их атрибуты(зарплата,материалы, сроки и прочее) вычисляются из подзадач.
Грубо говоря это как дерево. Где листья это обычные задачи а узлы разветвления это и есть суммарные задачи. Ну а ствол и есть главная суммарная задача состоящая из других суммарных задач =)
авторP.S. Если мы так проектируем учет - то страшно подумать, как строим... :-)))
Я только начинаю =))) Поэтому и попросил указать на ошибки =)
Строим вроде нормально =)
...
Рейтинг: 0 / 0
14.07.2009, 22:03
    #36089959
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Даже не знаю что и делать =(
Пытайтесь переформулировать задачу или описать по-другому бизнес-процесс.
Возможно, имеет смысл описать ввести термин бригад, выделенных на объект, и
уже из выделенных проводить назначения.
Хотя, в моем понимании должны присутствовать еще специализации бригад в
связке с работами.

>>> 5. Не ясен смысл связи TBL_GRAPH - "Основная таблица. Хранятся задачи и
>>> их
>>>сроки." и TBL_RESOURCES_EI - "Единицы измерения".
>> Ну надеюсь после скриншота станет понятно =)
Нет. Мне не ясно, как может быть связана задача и единица измерения
материала. Еще можно это рассмотреть в контексте списка матриалов,
выделенных для задачи. Но это уже, по меньшей мере, 1:M.

>> А очень плохо использовать это в двух табличках ?
>> Просто хотел ограничить доступ пользователей...
Ну и ограничивайте...

>>> Есть такие страшные слова - "отчеты", "выборки", "запросы"... Без них и
>>> MSP не обходится.
>> Да я это понимаю... =)
А вот этого - пока не ощущается.
Скажу честно, не вижу никакого смысла в Вашем случае хранить агрегаты. Их
хранят отдельно только тогда, когда эти итоги очень часто используются в
качестве исходных данных при объемных расчетов.

P.S. Короче, переделывайте и нормальную схему с бизнес-описанием
выкладывайте, если хотите совет получить. Не забыв, ессно, про все
вышеуказанное.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.07.2009, 09:19
    #36090331
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Kirill Razuvaev
А вот этого - пока не ощущается.
Скажу честно, не вижу никакого смысла в Вашем случае хранить агрегаты. Их
хранят отдельно только тогда, когда эти итоги очень часто используются в
качестве исходных данных при объемных расчетов.

P.S. Короче, переделывайте и нормальную схему с бизнес-описанием
выкладывайте, если хотите совет получить. Не забыв, ессно, про все
вышеуказанное.


У каждой задачи есть объём работы. Этот объём измеряется в единицах измерения. Что бы не создавать лишнюю таблицу использую справочник единиц измерения материалов.

Переделывать всё полностью или только части по которым замечания ?

А можно ещё ссылочку на нормальное бизнес описание ? В интернете ничего не нашёл =(
...
Рейтинг: 0 / 0
15.07.2009, 12:40
    #36090951
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> У каждой задачи есть объём работы. Этот объём измеряется в единицах
>> измерения.
>> Что бы не создавать лишнюю таблицу использую справочник единиц измерения
>> материалов.
Тогда на кой фиг в названии таблицы RESOURCES???

>> Переделывать всё полностью или только части по которым замечания ?
Дело Ваше. Я бы рекомендовал для начала разобраться с линейной частью работ,
а потом уже реализовывать дерево.

>> А можно ещё ссылочку на нормальное бизнес описание?
Что мешает просто описать словами, что где хранится, от чего зависит, на что
влияет, какие есть ограничения, что необходимо проверять?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.07.2009, 13:07
    #36091035
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Исправленная схема =)
Над описанием ещё работаю =)
...
Рейтинг: 0 / 0
15.07.2009, 14:09
    #36091203
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Над описанием ещё работаю =)
Без него говорить не о чем...

P.S. Рекомендацию о "вменяемой" длине названий таблиц, я так понял, Вы
проигнорировали...

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.07.2009, 15:31
    #36091469
nosov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
2 автор
да уберите же Вы эти TBL из названий таблиц
ежу понятно что это таблицы (имхо)
...
Рейтинг: 0 / 0
15.07.2009, 16:26
    #36091608
Сахават Юсифов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Связи (межпроцессные) нетипизированы. Каждый козел внесет свой тип, а прога не сможет интерпретировать.
...
Рейтинг: 0 / 0
15.07.2009, 18:03
    #36091912
Serguei
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Бред какой то. вы бы на диаграмму положили штук 100 таблиц и разбирались бы.
Разбейте лучше на несколько диаграмм по тематике.
С ключами проблема большая у вас. Читайте что такое primary key и для чего они нужны.

Критиковать пока нечего -неправильно все.
...
Рейтинг: 0 / 0
16.07.2009, 09:29
    #36092500
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Serguei
С ключами проблема большая у вас. Читайте что такое primary key и для чего они нужны.


Хм странно. Очень внимательно читал тему ключей.
Вроде сделал всё правильно. Не стал использовать естественный ключ а использую суррогатный ключ.
Вроде как у естественного есть недостатки.
Что именно неправильно ?
...
Рейтинг: 0 / 0
16.07.2009, 12:20
    #36093003
Serguei
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Oleg Kondratskiy
Хм странно. Очень внимательно читал тему ключей.
Вроде сделал всё правильно. Не стал использовать естественный ключ а использую суррогатный ключ.
Вроде как у естественного есть недостатки.
Что именно неправильно ?

Пардон. Небычный стиль отображения ключей, не сразу заметил (зрение видимо ослабло...) что около иконки с ключем стоит 1 и F. Мне показазалось что это все первичные ключи. Так что пост снимается :) Н

Станным кажется что тип машины связан не с машиной, а с каким то деревом.

Сложно разбираться с тем, что во первых непонятно как должно работать, а во вторых все смешано в одну большую кучу.
...
Рейтинг: 0 / 0
16.07.2009, 12:20
    #36093007
Kirill Razuvaev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
>> Вроде как у естественного есть недостатки.
Во-первых, недостатки есть как у естественного, так и у суррогатного.

>> Что именно неправильно ?
Напишите, наконец, словами, что и как должно работать, в процессе
написания - сами многое поймете, что и как организовать. Что-то из серии:
...Присутствует сущность "бригада", однозначно идентифицируемая атрибутом
код бригады. Связана с сущностью "типы бригад" через атрибут "код типа
бригады"...
.... Пользователь не может назначить на работы по объекту бригаду, которая не
была предвариетльно выделена на данный объект..

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
16.07.2009, 13:01
    #36093171
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
Составил схему бизнес-процессов =) ну а точнее что то приближённое =)
...
Рейтинг: 0 / 0
16.07.2009, 13:02
    #36093174
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
...
Рейтинг: 0 / 0
16.07.2009, 13:02
    #36093177
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
...
Рейтинг: 0 / 0
16.07.2009, 13:03
    #36093181
Oleg Kondratskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Покритикуйте структуру БД
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Покритикуйте структуру БД / 25 сообщений из 37, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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