Re: Reglas/Triggers

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: "Gauto Miguel A(dot)" <mgauto(at)yahoo(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Reglas/Triggers
Date: 2006-10-20 14:42:20
Message-ID: 20061020144220.GC6718@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gauto Miguel A. escribió:
> Amigos:
> He visto que el Postgres es muy similar al
> Ingres(ancestro) por lo que he buscado lo siguiente:
>
> 1) apagar todas las reglas a la vez, y
> 2) apagar una regla en partigular.

No se puede.

> Alguien podría decirme como hago esto?
>
> Otra cosa, en Ingres no existen los triggers, sólo
> existen las reglas y los procedimientos:
>
> 1) se definen por separado, primero se define el
> procedimiento que se ejecutará por un evento en la
> tabla(insert,delete,update), y

Hmm, esto lo haces con CREATE FUNCTION

> 2) luego se define la regla, que puede tener inclusive
> where por columnas específicas.

Esto es un CREATE TRIGGER.

> Ahora bien, tengo entendido que el Postgres tiene
> reglas y triggers, lastimosamente mi ingles es muy
> limitado y no logro entender bien cual es la
> diferencia entre triggers y reglas. Alguien me podría
> explicar?

La diferencia es que no tienen nada que ver :-) No tengo tiempo ahora
de explicarlo detallado, pero lo que hace una regla es convertir tu
consulta en una consulta distinta. Es un lenguaje de macros, como una
macro en C por ejemplo. En un trigger tu simplemente le dices al
sistema que cuando pase tal cosa (e.g. insertes un registro), entonces
haga tal otra (ejecute tal funcion).

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Linder Poclaba 2006-10-20 17:14:51 Ayuda a interpretar resultado EXPLAIN ANALYZE
Previous Message Gauto Miguel A. 2006-10-20 14:35:09 Reglas/Triggers