Skip site navigation (1) Skip section navigation (2)

Re: Atrapar los errores de Postgres de Referencias...

From: "Linder Poclaba" <linder(dot)poclaba(at)gmail(dot)com>
To: "Alex Barrios" <alexertech(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Atrapar los errores de Postgres de Referencias...
Date: 2006-06-27 15:46:06
Message-ID: 5aa69e1b0606270846l61d8ccf4uba34e9bd375b04cd@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On 6/27/06, Alex Barrios <alexertech(at)gmail(dot)com> wrote:
>
> Hola a todos!
>
> Tengo el siguiente problema/curiosidad:
>
> Resulta que en una aplicacion tengo una serie de tablas que tienen
> referencias entre ellas. Por ejemplo:
>
> > estados:
> cod_estado
> nombre
>
> > ciudades:
> cod_ciudad
> cod_estado
> nombre
>
> Tengo una referencia entre la tabla ciudades y estados por medio del
> campo cod_estado. La referencia es la siguiente:
>
> FOREIGN KEY ciudad(cod_estado) REFERENCES estado(cod_estado)
>
> Como ven, no utilice ON DELETE CASCADE ni nada por el estilo, ya que
> lo que quiero es que no se pueda eliminar un estado si este tiene una
> ciudad asignada.
>
> Todo funciona perfecto, pero me aparece un feo error de postgres justo
> en el PHP indicando que se viola la clave.



Quisiera atrapar este error, ver a que tabla se refiere, para asi
> poder convertir este error en un mensaje mas digerible visualmente
> para el usuario comun.


Puedes crear una funcion en plpgsql y ahi capturas el error algo asi

sentencias;
BEGIN
     sentencias;
EXCEPTION condicion THEN
     RAISE NOTICE 'atrapaste el error';
     RETURN algo;
END;

Ojo pero se aconseja usar EXCEPTION si realmente es necesario, puedes leer
la documentacion para mas info.

Que sugieren?
>
> Saludos y gracias de antemano...
>
> --
> Alex Barrios
> www.alexertech.com
> Usuario Linux #383172
> Gentoo 2.6.16-gentoo-r9
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 4: No hagas 'kill -9' a postmaster
>

In response to

Responses

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2006-06-27 15:47:10
Subject: Re: Atrapar los errores de Postgres de Referencias...
Previous:From: Mario GonzalezDate: 2006-06-27 15:44:52
Subject: Re: Atrapar los errores de Postgres de Referencias...

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group