Integridad Referencial

Jose David Martinez Cuevas david@morgana.estadistica.unam.mx
Wed, 19 Aug 1998 17:57:37 -0500 (CDT)



> 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@tlali.iztacala.unam.mx
text   : cancelacion pgsql-ayuda