Re: When use triggers?

Поиск
Список
Период
Сортировка
От Vick Khera
Тема Re: When use triggers?
Дата
Msg-id CALd+dcetO-Omkb8uOH_CySmtkSd4A18BWULoHo5r6CO815B6vg@mail.gmail.com
обсуждение исходный текст
Ответ на When use triggers?  (hmidi slim <hmidi.slim2@gmail.com>)
Ответы Re: When use triggers?  (Melvin Davidson <melvin6925@gmail.com>)
Список pgsql-general
On Wed, May 16, 2018 at 6:19 PM, hmidi slim <hmidi.slim2@gmail.com> wrote:
HI,

I'm working on a microservice application and I avoid using triggers because they will not be easy to maintain and need an experimented person in database administration to manage them. So I prefer to manage the work in the application using ORM and javascript.
However I want to get some opinions and advices about using triggers: when should I use them? How to manage them when there are some problems?

I have used triggers to keep audit-logs of changes to certain columns in a table. For example, I want to know when a customer went "overdue" and then back to "active". The best place to create that log is in the database itself, since that also captures any manually updated rows (ie, those actions not initiated by the application code itself).

I have also used triggers to ensure data consistency and enforce state diagram transition rules for status columns in a table. These help capture logic errors in application code. For example, if your state diagram allows A -> B <-> C, then the trigger would disallow a transition from B or C  to A, disallow A -> C, but allow C -> B and B -> C and A -> B.

To manage them, we treat them like all DDL changes: everything is done via SQL script, and those are tracked using our version control software, go through developer testing then staging testing, then finally production.

В списке pgsql-general по дате отправления:

Предыдущее
От: "Peter J. Holzer"
Дата:
Сообщение: Re: Out of memory error with PG10.3, 10.4 but not 9.3.19
Следующее
От: Melvin Davidson
Дата:
Сообщение: Re: When use triggers?