Логическая модель данных, которая позволяет пользователям редактировать данные и утверждающим утверждать или отклонять изменения - PullRequest
0 голосов
/ 13 февраля 2020

Как говорится в названии, у меня есть проект, который должен сделать именно это. Как реализовать логическую модель данных?

Фактический характер данных не важен. Допустим, я создаю школьную базу данных, и учителя могут обновлять оценки учеников и другие детали. После обновления они будут сохранены в базе данных, но изменения будут ждать, пока директор школы утвердит или отклонит их.

Помните, что учитель может внести ряд изменений в сеанс, например, изменить Джона. адрес, затем введите последнюю математическую оценку Салли и, наконец, обновите расписание следующего месяца. При входе в систему директор школы должен увидеть серию неутвержденных изменений, go, проходящих через них одно за другим, и одобрить или отклонить.

Предположим, что однажды мистер Джонс изменил оценку Салли с 90 до 88, это изменение видно только мистеру Джонсу и директору школы. Все остальные увидят 90. Миссис Смит по-прежнему может вносить дополнительные изменения в официальный счет Салли (90), поэтому вполне вероятно, что, когда директор школы войдет в систему, он / она увидит два обновления:

  1. Обновление г-на Джонса с 90 до 88.
  2. Обновление миссис Смит с 90 до 85.

Директор школы узнает, что последует, и решит, что обновить, а что отклонить. .

Заранее спасибо.

PS. Мне бы особенно хотелось узнать, имеется ли какой-либо шаблон в домене publi c.

1 Ответ

0 голосов
/ 03 марта 2020

I способ сделать это создать контрольную таблицу. Который будет хранить все детали одобрения. Только руководитель может добавить строку в контрольную таблицу.

Кроме того, создайте промежуточную таблицу для хранения пользовательских данных до принятия окончательного решения. Эта таблица должна быть видна только пользователям с правами обновления / вставки.

В основной таблице создайте триггер для вставки данных из промежуточной в основную таблицу всякий раз, когда директор делает коммит.

...