Integridad Referencial
Integridad Referencial
Integridad Referencial
INTEGRIDAD
REFERENCIAL
INVESTIGACION # 3
IS. CARLOS FRANCISCO FRANCISCO BRINDIS GONZALEZ
INTEGRIDAD REFERENCIAL
El actualizar y/o eliminar registros en cascada, son opciones que se definen cuando
definimos la clave fornea y que le indican al sistema gestor qu hacer en los casos
comentados en el punto anterior
REGLAS DE INTEGRIDAD
La regla de Integridad referencial define que la base de datos no debe contener valores de
claves forneas sin concordancia.
Esta regla se aplica a las claves forneas. Si en una relacin hay alguna clave fornea,
entonces sus valores deben coincidir con los valores de la clave primaria a la que hace
referencia, o bien, debe ser completamente nulo.
Esta regla impide que, por ejemplo, en una base de datos acadmica, exista un profesor en
un departamento inexistente, o un curso impartido por un profesor inexistente. Hemos de
recordar que slo los productos puramente relacionales implementan realmente estas dos
reglas generales de Integridad relacional. En otros, destinados al mercado domstico (un
Microsoft Access por ejemplo), estas incongruencias son admitidas sin problemas.
As que cuando se realiza una operacin ilegal, existen dos opciones: rechazar la operacin
ilegal o bien aceptar la operacin y realizar operaciones adicionales compensatorias que
conduzcan a volverla legal.
Por lo tanto, para cada clave fornea en la base de datos habr que contestar a dos
preguntas:
1. Regla de los nulos: tiene sentido que la clave fornea acepte nulos?
2. Regla de borrado: Qu ocurre si se intenta borrar la tupla referenciada por la clave
fornea?
Restringir: no se permite borrar la tupla referenciada.
Propagar: se borra la tupla referenciada y se propaga el borrado a las tuplas que hacen
referencia mediante la clave fornea.
Anular: se borra la tupla referenciada y las tuplas que la referenciaban indicando un valor
nulo a la clave fornea (slo si acepta nulos).
La Integridad referencial tambin vigila que se cumplan las siguientes reglas:
No se podr introducir un valor en la tabla relacionada si antes no ha sido introducida en
la tabla principal.
No se puede eliminar un registro de una tabla principal si existen registros coincidentes en
la tabla relacionada.
No se puede cambiar un valor de la clave primaria en la tabla principal si el registro tiene
registros relacionados.
La regla de Integridad referencial define que la base de datos no debe contener valores de
claves forneas sin concordancia.
Esta regla se aplica a las claves forneas. Si en una relacin hay alguna clave fornea,
entonces sus valores deben coincidir con los valores de la clave primaria a la que hace
referencia, o bien, debe ser completamente nulo.
Esta regla impide que, por ejemplo, en una base de datos acadmica, exista un profesor en
un departamento inexistente, o un curso impartido por un profesor inexistente. Hemos de
recordar que slo los productos puramente relacionales implementan realmente estas dos
reglas generales de Integridad relacional. En otros, destinados al mercado domstico (un
Microsoft Access por ejemplo), estas incongruencias son admitidas sin problemas.
As que cuando se realiza una operacin ilegal, existen dos opciones: rechazar la operacin
ilegal o bien aceptar la operacin y realizar operaciones adicionales compensatorias que
conduzcan a volverla legal.
Por lo tanto, para cada clave fornea en la base de datos habr que contestar a dos
preguntas:
1. Regla de los nulos: tiene sentido que la clave fornea acepte nulos?
2. Regla de borrado: Qu ocurre si se intenta borrar la tupla referenciada por la clave
fornea?
Restringir: no se permite borrar la tupla referenciada.
Propagar: se borra la tupla referenciada y se propaga el borrado a las tuplas que hacen
referencia mediante la clave fornea.
Anular: se borra la tupla referenciada y las tuplas que la referenciaban indicando un valor
nulo a la clave fornea (slo si acepta nulos).
La Integridad referencial tambin vigila que se cumplan las siguientes reglas:
No se podr introducir un valor en la tabla relacionada si antes no ha sido introducida en
la tabla principal.
No se puede eliminar un registro de una tabla principal si existen registros coincidentes en
la tabla relacionada.
No se puede cambiar un valor de la clave primaria en la tabla principal si el registro tiene
registros relacionados.