RE: Borrar registro con FK

From: Javier Bermúdez Tito <javier_bt(at)hotmail(dot)com>
To: <jsgarcia(at)seguridad(dot)unam(dot)mx>
Cc: Ayuda PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Borrar registro con FK
Date: 2009-06-16 14:15:59
Message-ID: SNT115-W2756FB1A150ED19AC578C4853F0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


Bueno segun tu correo ese error que te sale, en algun momento lo tube cuando comence a implementar FK en mi base de datos, hasta donde entiendo es por la referencia que existe entre una tabla cabecera y detalle, uhh algo asi como; que no se puede eliminar un registro que tiene referencia en la tabla detalle o no puede existir un detalle sin una cabecera OJO esto es solo cuando estan definidos los FK en dichas tablas involucradas.

Bueno la solución que le di es tan solo como eliminar en orden un registro osea primero tengo que eliminar el Detalle y luego la Cabecera asi no te mostrara ningun mensaje de error, una de las ventajas los FK es que ayudan a validar que no existan datos corruptos en tu base de datos.

.:: J @ v i e r ::.

> Date: Mon, 15 Jun 2009 18:47:44 -0500
> From: jsgarcia(at)seguridad(dot)unam(dot)mx
> To: pgsql-es-ayuda(at)postgresql(dot)org
> Subject: [pgsql-es-ayuda] Borrar registro con FK
>
> Buenas tardes,
>
>
> En un blog que tenemos, para mostrar el último artículo, obtiene datos
> de diferentes tablas (tres para ser exactos).
> Esas tres tablas están relacionadas entre sí. La cuestión es que
> necesito eliminar un registro que hice de prueba. Tengo que ir
> eliminando tabla por tabla. LO que no encuentro es cómo borrar para
> que no me salga el error:
>
> ERROR: update or delete on table "tabla1" violates foreign key
> constraint "$1" on table "tabla2"
> DETAIL: Key (id)=(523) is still referenced from table "table2".
>
> Yo entiendo que que así como así no se puede pues ese es uno de los
> objetivos de crear las FK. He investigado y al parecer se hace con ON
> DELETE CASCADE....aunque no entiendo si en verdad es así o cómo se
> utiliza.
>
>
> Gracias¡¡¡¡
>
>
>
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.
>

_________________________________________________________________
Connect to the next generation of MSN Messenger 
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Dilm E.I.R.L 2009-06-16 14:19:41 Re: Backup
Previous Message Cesar Erices 2009-06-16 14:12:16 OT... Alguien a instalado drupal 6.12 con postgres 8.3