On 05/16/2018 03:19 PM, hmidi slim 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?

Two benefits triggers and their associated functions offer, with the understanding these are general statements:

1) Are in the database so tasks that always need happen do not need to be replicated across the various interfaces that touch the database.

2) Also since they run on the server the data does not necessarily cross a network, so less network bandwidth and better performance.

An example of a use case is table auditing. If you need to track what is being INSERTed/UPDATEd/DELETEd in a table stick an audit trigger/function on the table and push the information to an audit table.

As to managing, they are like any other code. I keep my schema code in scripts under version control and deploy them from there. I use Sqitch(http://sqitch.org/) which allows me to deploy and revert changes. I use a dev database to test and troubleshoot triggers and functions.

--
Adrian Klaver
adrian.kla...@aklaver.com

Reply via email to