powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите найти ошибки
12 сообщений из 12, страница 1 из 1
Помогите найти ошибки
    #38885786
idShura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Делаю систему контроля исполнения заданий (курсовой проект), но не уверен что сделал правильно.
Помогите пожалуйста найти ошибки и аномалии в базе.



Таблицы:
USER - Пользователи
USERTYPE - Типы пользователей
OTDEL - Отделы
TASK - Задания
EXECUTION - Выполнение заданий
PERCENTAGE - Процент исполнения заданий (нужно хранить историю)
STATE - Статус задания
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38885788
idShura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38885838
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
idShura Таблицы:
USER - Пользователи
USERTYPE - Типы пользователей
OTDEL - Отделы
TASK - Задания
EXECUTION - Выполнение заданий
PERCENTAGE - Процент исполнения заданий (нужно хранить историю)
STATE - Статус задания
В целом направление мыслей верное.
Самая интересная таблица в вашем случае EXECUTION и вы ее не проработали.
Как минимум наверное надо знать когда началось выполнение, и наверное когда закончилось. И наверное не за один прием задание может выполняться?

Это можно сделать двумя полями (время начала, время окончания) если интересуют только начала и окончания, а можно таблицей (операций тип операции, время), если типов операций больше, чем 2.

Думайте внимательнее ;-)
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38885839
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да! И в таблице PERCENTAGE хранить не очень красиво на мой взгляд. Вас же наверное должно интересовать кто выполнял отчет?
Сначала я не обратил внимания на направление связи между PERCENTAGE и EXECUTION

Проценты, текстовый комментарий ну и время я бы сделал в EXECUTION.
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38885878
idShura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Serguei , попробую доработать
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38885925
ScarferNV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По мне, так это таблица TASK лишняя... Можно ее совместить с EXECUTION.
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38886011
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScarferNVПо мне, так это таблица TASK лишняя
Задание выдается один раз и отслеживается его исполнение. Поэтому TASK+EXECUTION это то что надо.
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38886511
idShura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного переделал (Поправил связь таблиц PERCENTAGE и EXECUTION и всякие мелочи).
Теперь вроде меня все устраивает в структуре, и уже начал писать клиентское приложение.


авторПо мне, так это таблица TASK лишняя... Можно ее совместить с EXECUTION.
Одинаковое задания могут выдаваться разным пользователям и для того чтобы не дублировать информацию сделал две таблицы.

авторПроценты, текстовый комментарий ну и время я бы сделал в EXECUTION.
Я проценты специально сделал в таблице PERCENTAGE т.к. мне нужно хранить историю выполнения задания.

авторЭто можно сделать двумя полями (время начала, время окончания) если интересуют только начала и окончания
Задания даются ежемесячно, получается что дата начала это начала месяца, а конец task.lifetime

...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38886614
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergueiidShura Таблицы:
USER - Пользователи
USERTYPE - Типы пользователей
OTDEL - Отделы
TASK - Задания
EXECUTION - Выполнение заданий
PERCENTAGE - Процент исполнения заданий (нужно хранить историю)
STATE - Статус задания
В целом направление мыслей верное.
Самая интересная таблица в вашем случае EXECUTION и вы ее не проработали.
Как минимум наверное надо знать когда началось выполнение, и наверное когда закончилось. И наверное не за один прием задание может выполняться?

Это можно сделать двумя полями (время начала, время окончания) если интересуют только начала и окончания, а можно таблицей (операций тип операции, время), если типов операций больше, чем 2.

Думайте внимательнее ;-)

кроме того, суррогатный ключ там явно лишний...
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38886649
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivкроме того, суррогатный ключ там явно лишний...
Не факт. Возможно по разным операциям с задачей автор захочет фиксировать разные данные.
Ну это он сам пусть решит. Я всегда старделширелать так, чтобы можно было легко расширить функционал.
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38886743
idShura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторкроме того, суррогатный ключ там явно лишний...
Не совсем понял про какой ключ вы говорите?
...
Рейтинг: 0 / 0
Помогите найти ошибки
    #38887102
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
idShuraавторкроме того, суррогатный ключ там явно лишний...
Не совсем понял про какой ключ вы говорите?

EXECUTION.id
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите найти ошибки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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