Lists: | pgsql-es-ayuda |
---|
From: | "Toni Casueps" <casueps(at)hotmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | impedir eliminacion en cascada |
Date: | 2006-10-26 12:09:38 |
Message-ID: | BAY108-F29F812727656F556B32A85AD070@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
Tengo algunas restricciones de integridad referencial en las que pongo
que si se elimina un registro se eliminen los registros relacionados.
El problema es que a veces los usuarios se cargan un registro de estos
y se cepillan un monton de registros relacionados. El caso es que sí
deberían poder borrar registros, pero solo aquellos que no vayan a
provocar eliminaciones en cascada.
¿Se puede hacer esto?
_________________________________________________________________
Acepta el reto MSN Premium: Protección para tus hijos en internet.
Descárgalo y pruébalo 2 meses gratis.
http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_proteccioninfantil
From: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
---|---|
To: | "Toni Casueps" <casueps(at)hotmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: impedir eliminacion en cascada |
Date: | 2006-10-26 12:37:46 |
Message-ID: | c2d9e70e0610260537h2bb4edb7o2b8cf26dd58688a0@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
On 10/26/06, Toni Casueps <casueps(at)hotmail(dot)com> wrote:
> Tengo algunas restricciones de integridad referencial en las que pongo
> que si se elimina un registro se eliminen los registros relacionados.
> El problema es que a veces los usuarios se cargan un registro de estos
> y se cepillan un monton de registros relacionados. El caso es que sí
> deberían poder borrar registros, pero solo aquellos que no vayan a
> provocar eliminaciones en cascada.
> ¿Se puede hacer esto?
>
y entonces porque definieron las FK con elimincion en cascada? borra
los FK y cambia la modalidad a restrict, no se si puedas hacer el
cambio sin reconstruir los FK (por ejemplo con un ALTER CONSTRAINT)
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
From: | "Toni Casueps" <casueps(at)hotmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: impedir eliminacion en cascada |
Date: | 2006-10-26 14:28:22 |
Message-ID: | BAY108-F10BF845DF77522DB811EB8AD070@phx.gbl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
Es para luego poder yo eliminar los registros con eliminacion en cascada
para que me sea mas facil. Digamos que estaria bien un "eliminacion en
cascada para unos usuarios y no para otros"
>
>On 10/26/06, Toni Casueps <casueps(at)hotmail(dot)com> wrote:
>>Tengo algunas restricciones de integridad referencial en las que pongo
>>que si se elimina un registro se eliminen los registros relacionados.
>>El problema es que a veces los usuarios se cargan un registro de estos
>>y se cepillan un monton de registros relacionados. El caso es que sí
>>deberían poder borrar registros, pero solo aquellos que no vayan a
>>provocar eliminaciones en cascada.
>>¿Se puede hacer esto?
>>
>
>y entonces porque definieron las FK con elimincion en cascada? borra
>los FK y cambia la modalidad a restrict, no se si puedas hacer el
>cambio sin reconstruir los FK (por ejemplo con un ALTER CONSTRAINT)
>
>--
>Atentamente,
>Jaime Casanova
>
>"Programming today is a race between software engineers striving to
>build bigger and better idiot-proof programs and the universe trying
>to produce bigger and better idiots.
>So far, the universe is winning."
> Richard Cook
_________________________________________________________________
Acepta el reto MSN Premium: Correos más divertidos con fotos y textos
increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis.
http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos
From: | "Javier Aquino H(dot)" <JAquino(at)LexusEditores(dot)com> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: impedir eliminacion en cascada |
Date: | 2006-10-26 14:39:49 |
Message-ID: | 003a01c6f90c$99801670$0a010a0a@javier |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
Entonces solo quitale la opción a la integridad referencial para que no se
elimine en cascada, asi cuando eliminas un registro y no tiene referencias
se elimina sin mayores problemas, pero si tiene referencias desde otras
tablas no te deja.
Slds,
Javier.
----- Original Message -----
From: "Toni Casueps" <casueps(at)hotmail(dot)com>
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Thursday, October 26, 2006 7:09 AM
Subject: [pgsql-es-ayuda] impedir eliminacion en cascada
> Tengo algunas restricciones de integridad referencial en las que pongo
> que si se elimina un registro se eliminen los registros relacionados.
> El problema es que a veces los usuarios se cargan un registro de estos
> y se cepillan un monton de registros relacionados. El caso es que sí
> deberían poder borrar registros, pero solo aquellos que no vayan a
> provocar eliminaciones en cascada.
> ¿Se puede hacer esto?
>
> _________________________________________________________________
> Acepta el reto MSN Premium: Protección para tus hijos en internet.
> Descárgalo y pruébalo 2 meses gratis.
> http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_proteccioninfantil
>
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 8: explain analyze es tu amigo
>
From: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
---|---|
To: | "Toni Casueps" <casueps(at)hotmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: impedir eliminacion en cascada |
Date: | 2006-10-27 00:28:11 |
Message-ID: | c2d9e70e0610261728v7d9262f5v4aea8e39c124069@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
On 10/26/06, Toni Casueps <casueps(at)hotmail(dot)com> wrote:
>
> Es para luego poder yo eliminar los registros con eliminacion en cascada
> para que me sea mas facil. Digamos que estaria bien un "eliminacion en
> cascada para unos usuarios y no para otros"
>
quiza deberias quitarles el privilegio de borrado en las tablas hijas,
asi no podra eliminar en cascada, claro que no podra eliminar en
absoluto...
o cambiar el modo de cascade a restrict y tu borras una por una las tablas...
pero lo que quieres, no existe
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
From: | "Alejandro D(dot) Burne" <alejandro(dot)dburne(at)gmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: impedir eliminacion en cascada |
Date: | 2006-10-27 13:00:59 |
Message-ID: | 8398dc6d0610270600u7c40d8ds5a39eb835ca3d697@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-es-ayuda |
2006/10/26, Jaime Casanova <systemguards(at)gmail(dot)com>:
>
> On 10/26/06, Toni Casueps <casueps(at)hotmail(dot)com> wrote:
> >
> > Es para luego poder yo eliminar los registros con eliminacion en cascada
> > para que me sea mas facil. Digamos que estaria bien un "eliminacion en
> > cascada para unos usuarios y no para otros"
> >
>
> Se me ocurre (manteniendo la eliminación en cascada)
- Un trigger para la sentencia DELETE y tendrías que mantener los usuarios
que pueden borrar dentro del mismo y al resto devolverles un error.
Alejandro.