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

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

From: Carlos Alberto Márquez Rey <carlos_marquez_rey(at)yahoo(dot)com>
To: Alex Barrios <alexertech(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Atrapar los errores de Postgres de Referencias...
Date: 2006-06-27 15:30:34
Message-ID: 20060627153034.60374.qmail@web50803.mail.yahoo.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Usa esto
   
  ALTER TABLE ciudades
         ADD FOREIGN KEY (cod_estado)
                             REFERENCES estados
                             ON DELETE RESTRICT;
  
Alex Barrios <alexertech(at)gmail(dot)com> escribió:
  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.

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



***********************************************************
Carlos Márquez
***********************************************************
 __________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
Regístrate ya - http://correo.espanol.yahoo.com/ 

In response to

Responses

pgsql-es-ayuda by date

Next:From: Edwin QuijadaDate: 2006-06-27 15:31:42
Subject: RE: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Rapidéz
Previous:From: Alvaro HerreraDate: 2006-06-27 15:24:58
Subject: Re: RE: ?==?iso-8859-1?Q?[pgsql-es-ayuda] RE: [pgsql-es-ayuda] RE: [p?==?iso-8859-1?Q?gsql-es-ayuda] Re: [pgsql-es-ayuda] Rapidéz

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