From: | Jose David Martinez Cuevas <david(at)morgana(dot)estadistica(dot)unam(dot)mx> |
---|---|
To: | pgsql-ayuda <pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx> |
Subject: | Re: Integridad Referencial |
Date: | 1998-08-19 22:57:37 |
Message-ID: | Pine.LNX.3.96.980819175125.10281C-100000@morgana.estadistica.unam.mx |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
> 1) Con constraints y funciones, se puede asegurar que no se inserten
> renglones a una tabla que no cumpla con las dependencias a otras tablas.
Cierto
> 2) Como asegurar que no sean eliminados renglones de los cuales
> dependen otras tablas?
Esto no se logra con constraints y funciones, mas bien se logra con
triggers
> 3) Un Trigger me puede ayudar para ello?, Dependiendo de algun resultado
> que devuelva el trigger antes de hacer el delete, Puedo evitar este
> ultimo?
PUES SSSIIIIII !!
Pero... estas utilizando SPI para crear los triggers ???
Si no es asi, consulta en el directorio de contribuciones ( contrib) el
directorio "SPI" y de ahi, revisa los archivos " refint.* ".
En estos archivos se describen dos funciones para integridad referencial:
check_primary_key() que sirve para evitar inserciones que violen
integridad referencial
check_foreign_key() que sirve para evitar borrar o actualizar
tuplas referenciadas en otras tablas
Todo lo que tienes que hacer es leer estos archivos para ver como funciona
la llamada a las funciones, compilar el codigo fuente y listo...
Saludos
David Martinez Cuevas
--------- Pie de mensaje -------------------------------------------
Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
Cancelar inscripcion:
mail to: majordomo(at)tlali(dot)iztacala(dot)unam(dot)mx
text : cancelacion pgsql-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Jose David Martinez Cuevas | 1998-08-19 23:06:30 | Precedencia |
Previous Message | Juan Pablo Rosas Durn | 1998-08-19 22:19:58 | Integridad Referencial |