Re: Rules versus triggers

2020-03-09 Thread Achilleas Mantzios

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 mailto:st...@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



Re: Rules versus triggers

2020-03-07 Thread Justin
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  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
>


Re: Rules versus triggers

2020-03-07 Thread stan
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




Re: Rules versus triggers

2020-03-07 Thread Justin
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  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.
>
> Thank you.
>
> --
> "They that would give up essential liberty for temporary safety deserve
> neither liberty nor safety."
> -- Benjamin Franklin
>
>
>


Re: Rules versus triggers

2020-03-07 Thread Steve Atkins



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