| 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: | Whole Thread | Raw Message | 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
| 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 |