asp.net vb - автоматически обновлять значение поля базы данных, когда другое значение добавляется в другом месте - PullRequest
1 голос
/ 11 марта 2012

У меня есть две таблицы: HolidayRequests & HolidayEntitlement

В запросах на отпуск у меня есть 1 поле:

  • Дни

Когда сотрудник добавляетзапрос праздника сохраняется в виде числа в таблице запросов праздников в поле дней (есть несколько запросов с разными днями)

В таблице HolidayEntitlement у меня есть 3 поля:

  • Право
  • Занято
  • Осталось

Когда сотрудник добавляет запрос на отпуск, я хочу, чтобы он обновил как взятый, так и Остаток что-то вроде ...

Занято = (сумма) Дни, когда staffid = staffid

Осталось = Право - Taken

Я понятия не имею, как это сделать.Идея похожа на идею управления запасами ... может кто-нибудь указать мне правильное направление, чтобы я мог начать

Ответы [ 2 ]

0 голосов
/ 11 марта 2012

Вы можете реализовать бизнес-логику следующим образом:

  • в базе данных с триггерами (см. Другие ответы)
  • в коде vb с Linq2sql, используя Partial Methods:

Пример из http://msdn.microsoft.com/en-us/library/bb546176.aspx

Partial Class Customer
    Private Sub OnAddressChanged()
        ' Insert business logic here.
    End Sub
End Class
0 голосов
/ 11 марта 2012
  1. Вы можете использовать хранимую процедуру и выполнять транзакцию всякий раз, когда обновляется родительское поле
  2. Использование триггера для запуска каждой вставки / обновления строки родительской таблицы и обновления 2-й таблицы
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...