Post on 12-Jan-2016
description
1
REGLAS DE INTEGRIDAD
Bases de Datos Relacionales
Doc. Ing.Marleny Soria M.
2
QUE ES LA INTEGRIDAD DE BD? La integridad tiene como función
proteger la BD contra operaciones que introduzcan inconsistencias en los datos.
Se habla de integridad en el sentido de corrección, validez o precisión de los datos.
3
Una base de datos contiene datos que deben reflejar la realidad.
En las bases de datos relacionales, significa que las tuplas que contienen las relaciones deben tener valores que reflejen la realidad.
Por ej: Un sueldo negativo
EMPLEADOS(cod_e,nombre,apellido,sueldo)
Si existe una tupla que tiene un valor de -1000 para el sueldo no tiene sentido, porque los sueldos no pueden ser negativos.
4
RESTRICCIONES DE DOMINIO Las reglas de integridad que los datos
almacenados en dicha estructura deben cumplir para garantizar que son correctos.
Al definir cada atributo sobre un dominio se impone una restricción sobre el conjunto de valores permitidos para cada atributo.
A este tipo de restricciones se les denomina restricciones de dominios.
5
TIPOS DE REGLAS DE INTEGRIDAD En toda base de datos relacional
existen dos reglas de integridad que son restricciones que se deben cumplir.
Regla de integridad de entidadesRegla de integridad referencial
6
REGLA DE INTEGRIDAD DE ENTIDADES Se aplica a las claves primarias de las
relaciones base y menciona lo siguiente:“Ninguno de los atributos que componen la clave primaria puede ser nulo”
Cod_e Nombre Puesto Salario
Juan Pérez Jefe de área 3000
222 José Sánchez Administrativo
1500
333 Ana Díaz Administrativo
1500
7
REGLA DE INTEGRIDAD REFERENCIAL Esta regla se aplica a las claves ajenas o
foráneas y menciona lo siguiente:“si en una relación hay alguna clave ajena, sus valores deben coincidir con valores de la clave primaria a la que hace referencia
Cod_cli Nombre Dirección
0001 Juan Xxx
0002 Pedro xxxx
Cod_fac Fecha Cod_cli
01 10/08/2013 0001
02 11/08/2013 0003
8
REGLA DE INTEGRIDAD REFERENCIAL Por lo tanto para cada clave ajena de la
BD habrá que contestar a tres preguntas:Regla de Nulos: Tiene sentido que la clave
ajena acepte nulo?Regla de Borrado: Qué ocurre si se intenta
borrar la tupla referenciada por la clave ajena? Restringir: No se permite borrar la tupla
referenciada Propagar: Se borra la tupla referenciada y se
propaga el borrado a las tuplas que la referencian mediante la clave ajena.
Anular: Se borra la tupla referenciada y las tuplas que la referenciaban ponen a nulo la clave ajena (sólo si acepta nulos)
9
REGLA DE INTEGRIDAD REFERENCIAL
Regla de Modificación: qué ocurre si se intenta modificar el valor de la clave primaria de la tupla referenciada por la clave ajena? Restringir: No se permite modificar el valor de la
clave primaria de la tupla referenciada. Propagar: Se modifica el valor de la clave
primaria de la tupla referenciada y se propaga la modificación a las tuplas que la referencian mediante la clave ajena.
Anular: Se modifica la tupla referenciada y las tuplas que la referencian ponen a nulo la clave ajena (solo si acepta nulos)