Etiquetas

jueves, 8 de noviembre de 2012

Unidad 4 tarea 2.



Integridad de los datos
La exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos.
 La integridad de datos pertenece a una de las siguientes categorías:
La integridad de entidad define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
Ejemplo
Tenemos la siguiente relación:
DESPACHOS
edificio
número
superficie
Marina
120
10
Marina
122
15
Marina
230
20
Diagonal
120
10


En esta relación, puesto que la clave primaria está formada por edificio y número, no hay ningún despacho que tenga un valor nulo para edificio, ni tampoco para número.
Otras relaciones bien podrían tener una clave primaria en la cual se permiten nulos. Como por ejemplo vamos a suponer  que se permiten nulos para el atributo P.COLOR en la base de datos proveedores y partes, y consideremos la relación resultante de la consulta “obtener todos los colores de las partes”.

La integridad de dominio viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.


Ejemplo:
Si en la relación EMPLEADOS(DNI, nombre, apellido, edademp) hemos declarado que dominio(DNI) es el dominio predefinido de los enteros, entonces no podremos insertar, por ejemplo, ningún empleado que tenga por DNI el valor “Luis”, que no es un entero.
Otro ejemplo seria que en la relación EMPLEADOS(DNI, nombre, apellido, edademp) hemos declarado que dominio(edademp) es el dominio definido por el usuario edad. Supongamos también que el dominio edad se ha definido como el conjunto de los enteros que están entre 16 y 65. En este caso, por ejemplo, no será posible insertar un empleado con un valor de 90 para edademp.


Como segundo ejemplo una empresa dedicada a la venta de bebidas; podríamos identificar a las bebidas:

-Todas las bebidasen un solo grupo.
-Todas las bebidas de la misma marca en un grupo.
-Agrupar las bebidas en función de si contienen alcohol o no
-El sabor de la bebida
-Cadas bebida de modo individual

En el contexto de las bases de datos, la integridad referencial es una propiedad deseable en las mismas. Gracias a la integridad referencial se garantiza que una entidad (fila o registro) siempre se relaciona con otras entidades válidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas
 Por ejemplo, en una base de datos académica, exista un profesor en un departamento inexistente, o un curso impartido por un profesor inexistente.
Otro  ejemplo seria , con las tablas Ventas y Títulos en la base de datos Pubs, la integridad referencial está basada sobre las relaciones entre la clave ajena (tit_ID) en la tabla ventas y la clave primaria (tit_ID) en la tabla Titulos, como se muestra en la Figura.


Otro ejemplo se puede representar en el siguiente cuadro:




La integridad definida por el usuario permite definir reglas de empresa específicas que no pertenecen a ninguna otra categoría de integridad. Todas las categorías de integridad admiten la integridad definida por el usuario. Esto incluye todas las restricciones de nivel de columna y nivel de tabla en CREATE TABLE, procedimientos almacenados y desencadenadores.
Un ejemplo podría ser  ser que no podamos matricular alumnos en un centro educativo de secundaria, menores de 12 años. El principio, para el modelo datos seria indiferente que en nuestros sistemas tuvieron alumnos matriculados menores de 12 años, pero no para los encargados de gestionar el centro educativo, para los que seria inaceptable que alumnos menores de esa edad estuvieron causando estudios en el centro.

Otro ejemplo similar sería que nuestra base de datos no aceptara a ciertos usuarios en una biblioteca, por ejemplo usuarios con adeudo graves en la biblioteca no podrían ser acreedores a un préstamo. 

No hay comentarios:

Publicar un comentario