Rules versus triggers

Started by stanabout 6 years ago6 messagesgeneral
Jump to latest
#1stan
stanb@panix.com

Could someone give me a brief description of the intended functionally, and
how the 2 features work of rules, versus triggers? It appears to me that
they are simply 2 different ways to set up triggers, but I am certain that
is just because of my lack of knowledge.

Thank you.

--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
-- Benjamin Franklin

#2Steve Atkins
steve@blighty.com
In reply to: stan (#1)
Re: Rules versus triggers

On 07/03/2020 11:56, stan wrote:

Could someone give me a brief description of the intended functionally, and
how the 2 features work of rules, versus triggers? It appears to me that
they are simply 2 different ways to set up triggers, but I am certain that
is just because of my lack of knowledge.

The pages
https://wiki.postgresql.org/wiki/Don%27t_Do_This#Don.27t_use_rules links
to will give you some idea of the differences.

Cheers,
  Steve

#3Justin
zzzzz.graf@gmail.com
In reply to: stan (#1)
Re: Rules versus triggers

Hi Stan

Rules actual are able to rewrite the SQL query sent to postgresql. Most
everyone suggestion is avoid rules.

Triggers are just like every other databases Triggers firing off code for
Insert/Update/Delete/Truncate event
https://www.postgresql.org/docs/current/sql-createtrigger.html

On Sat, Mar 7, 2020 at 6:56 AM stan <stanb@panix.com> wrote:

Show quoted text

Could someone give me a brief description of the intended functionally, and
how the 2 features work of rules, versus triggers? It appears to me that
they are simply 2 different ways to set up triggers, but I am certain that
is just because of my lack of knowledge.

Thank you.

--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
-- Benjamin Franklin

#4stan
stanb@panix.com
In reply to: Justin (#3)
Re: Rules versus triggers

On Sat, Mar 07, 2020 at 09:47:39AM -0500, Justin wrote:

Hi Stan

Rules actual are able to rewrite the SQL query sent to postgresql. Most
everyone suggestion is avoid rules.

Triggers are just like every other databases Triggers firing off code for
Insert/Update/Delete/Truncate event
https://www.postgresql.org/docs/current/sql-createtrigger.html

So, the RULE can actually rewrite the query, instead of replacing it,
which is what I m doing in the function, correct?
--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
-- Benjamin Franklin

#5Justin
zzzzz.graf@gmail.com
In reply to: stan (#4)
Re: Rules versus triggers

Yes a rule can rewrite query or replace the query

Read through Depesz post about rules and the weird side affects that can
occurr
https://www.depesz.com/2010/06/15/to-rule-or-not-to-rule-that-is-the-question/

On Sat, Mar 7, 2020 at 9:57 AM stan <stanb@panix.com> wrote:

Show quoted text

On Sat, Mar 07, 2020 at 09:47:39AM -0500, Justin wrote:

Hi Stan

Rules actual are able to rewrite the SQL query sent to postgresql. Most
everyone suggestion is avoid rules.

Triggers are just like every other databases Triggers firing off code for
Insert/Update/Delete/Truncate event
https://www.postgresql.org/docs/current/sql-createtrigger.html

So, the RULE can actually rewrite the query, instead of replacing it,
which is what I m doing in the function, correct?
--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
-- Benjamin Franklin

#6Achilleas Mantzios
achill@matrix.gatewaynet.com
In reply to: Justin (#5)
Re: Rules versus triggers

On 7/3/20 5:01 μ.μ., Justin wrote:

Yes a rule can rewrite query or replace the query

Read through Depesz  post about rules and the weird side affects that can occurr
https://www.depesz.com/2010/06/15/to-rule-or-not-to-rule-that-is-the-question/

IMHO Rules are cool. It allows for more elegant design (vs doing it otherwise) and it results in faster queries. In our system we have currently 61 rules and 331 triggers.

On Sat, Mar 7, 2020 at 9:57 AM stan <stanb@panix.com <mailto:stanb@panix.com>> wrote:

On Sat, Mar 07, 2020 at 09:47:39AM -0500, Justin wrote:

Hi Stan

Rules actual are able to rewrite the SQL query sent to postgresql.  Most
everyone suggestion is avoid rules.

Triggers are just like every other databases Triggers firing off code for
Insert/Update/Delete/Truncate event
https://www.postgresql.org/docs/current/sql-createtrigger.html

So, the RULE can actually rewrite the query, instead of replacing it,
which is what I m doing in the function, correct?
--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
                                                -- Benjamin Franklin

--
Achilleas Mantzios
IT DEV Lead
IT DEPT
Dynacom Tankers Mgmt