Base de Datos II Unidad 2, Integridad

21
Unidad II Bases de Datos 2

Transcript of Base de Datos II Unidad 2, Integridad

Page 1: Base de Datos II Unidad 2, Integridad

Unidad II

Bases de Datos 2

Page 2: Base de Datos II Unidad 2, Integridad

2.1 Definición Se refiere a la exactitud o

corrección de los datos en la base de datos. Los guardados en la base de datos deben de estar protegidos contra los accesos no autorizados, de la destrucción o alteración mal intencionada y de la introducción accidental de inconsistencias. El mal uso de la base de datos puede clasificarse como malintencionada (con premeditación)o accidental.

Page 3: Base de Datos II Unidad 2, Integridad

2.1 DefiniciónLa perdida accidental de la

consistencia de los datos puede ser resultado de :

1. Caídas durante el procesamiento de transacciones.

2. Anomalías causadas por el acceso concurrente a la base de datos.

3. Anomalías causadas por la distribución de datos entre varias computadoras

Page 4: Base de Datos II Unidad 2, Integridad

2.1 DefiniciónLa perdida accidental de la

consistencia de los datos puede ser resultado de :

4. Errores lógicos que violan la suposición de que las transacciones conservan las ligaduras de consistencia de la base de datos. Es mas sencilla la protección contra la perdida accidental de la consistencia de los datos que la protección contra el acceso mal intencionado a la base de datos.

Page 5: Base de Datos II Unidad 2, Integridad

2.1 DefiniciónEntre las formas de acceso

malintencionado se encuentra:

1. La lectura no autorizada de los datos (robo de información)

2. La modificación no autorizada de los datos

3. La destrucción no autorizada de los datos.

Page 6: Base de Datos II Unidad 2, Integridad

2.2 Reglas de integridadCONCEPTO 1.

Las restricciones de integridad proporcionan un medio de asegurar que los cambios que se hacen en la base de datos por usuarios autorizados no resultan en una perdida de consistencia de los datos. Así, pues, las restricciones de integridad protegen la base de datos contra daños accidentales.

Page 7: Base de Datos II Unidad 2, Integridad

2.2 Reglas de integridadCONCEPTO 2.

Una vez definida la estructura de datos del modelo relacional, pasamos a estudiar las reglas de integridad que los datos almacenados en dicha estructura deben cumplir para garantizar que son correctos.

Page 8: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.(RESTRICCIONES DE DOMINIO)

Un dominio D es un conjunto de valores atómicos. Por lo que respecta al modelo relacional, atómico significa indivisible; es decir, que por muy complejo o largo que sea un valor atómico, no tiene una estructuración interna para un SGBD relacional.

Page 9: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.Los dominios pueden ser de dos

tipos:

1) Dominios predefinidos, que corresponde a los tipos de datos que normalmente proporcionan los lenguajes de bases de datos, como por ejemplo los enteros, las cadenas de caracteres, los reales, etc.

2) Dominios definidos por el usuario, que pueden ser más específicos. Toda definición de un dominio debe constar, como mínimo, del nombre del dominio y de la descripción de los valores que forman parte de éste.

Page 10: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.Dominio definido por el usuario

Por ejemplo, el usuario puede definir un dominio para las edades de los empleados que se denomine dom_edad y que contenga los valores enteros que están entre 16 y 65

Page 11: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.(RESTRICCIONES DE DOMINIO)

Al definir cada atributo sobre un dominio se impone una restricción sobre un conjunto de valores permitidos para cada atributo. A este tipo de restricciones se le denomina restricciones de dominio

Los limites de dominios son la forma más elemental de restricciones de integridad. Son fáciles de probar por el sistema siempre que se introduce un nuevo dato en la base de datos.

Page 12: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.

La regla de integridad de dominio está relacionada, como su nombre indica, con la noción de dominio. Esta regla establece dos condiciones.

La primera condición consiste en que un valor no nulo de un atributo Ai debe pertenecer al dominio del atributo Ai; es decir, debe pertenecer a dominio(Ai).

Page 13: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.

Esta condición implica que todos los valores no nulos que contiene la base de datos para un determinado atributo deben ser del dominio declarado para dicho atributo.

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.

Page 14: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.Los dominios pueden ser

de dos tipos: predefinidos o definidos por el usuario. Observad que los dominios definidos por el usuario resultan muy útiles,porque nos permitendeterminar de formamás específica cuáles serán los valores admitidos por los atributos.

Ejemplo

Supongamos ahora 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.

Page 15: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.

TIPOS DE DOMINIOS

Es posible que varios atributos tengan el mismo dominio. Las restricciones de dominio no solo nos permite probar valores insertados en la base da datos sino que también nos permite probar consultas para asegurar que la comparación que se hace tiene sentido.

Page 16: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.TIPOS DE DOMINIO EN SQL

El SQL estándar soporta un conjunto restringido de tipos de dominios:

Cadena de caracteres de longitud fija, con longitud especificada por el usuario.

Numero en coma fija, con precisión especificada por el usuario.

Entero (un subconjunto finito de los enteros que es dependiente de la maquina)

Entero pequeño (un subconjunto del tipo de dominio entero dependiente de la maquina).

Números en coma flotante y en coma flotante de doble precisión, con precisión dependiente de la maquina.

Page 17: Base de Datos II Unidad 2, Integridad

2.3 Reglas de integridad de Dominio.

VALORES NULOS

El SQL estándar permite que la declaración del dominio de un atributo incluya la especificación not null . Cualquier modificación de la base de datos que causara que se insertase un valor nulo en un dominio notnull genera un diagnóstico de error.

Page 18: Base de Datos II Unidad 2, Integridad

2.4 Reglas de integridad de relación.

Se aplica a las claves ajenas si en una relación hay alguna clave ajena, sus valores deben coincidir con los valores de la clave primaria a la que hace referencia o bien deben ser completamente nulos.

Se enmarca en términos de estados de la base de datos indica lo que es un estado ilegal pero no dice como puede evitarse.

Existen 2 opciones rechazar la operación o bien aceptar la operación y realizar operaciones adicionales compensatorias que conduzcan a un estado legal.

Page 19: Base de Datos II Unidad 2, Integridad

2.5 Mecanismos de vistas para implementación de integridad.

Una vista es una forma de proporcionar al usuario un modelo personalizado de la base de datos. Aunque es imposible impedir que un usuario tenga acceso directo a una relación, puede permitírsele acceso a parte de esa relación por medio de una vista.

Una vista puede ocultar datos que un usuario no tiene necesidad de ver.

Page 20: Base de Datos II Unidad 2, Integridad

2.5 Mecanismos de vistas para implementación de integridad.Las vistas facilitan hasta cierto grado la independencia lógica.

Permite que los datos sean vistos de distinta manera por diferentes usuarios.

Para aquellos usuarios finales no expertos, se les puede proporcionar una vista sencilla de los datos que sea el join de todas las tablas, para que pregunten sólo utilizando selecciones y proyecciones. No podrán actualizar tablas, pero eso será incluso positivo, para que no estropeen mucho.

Page 21: Base de Datos II Unidad 2, Integridad

2.5 Mecanismos de vistas para implementación de integridad.

Facilitan la seguridad. Cuando se crea una tabla, el ABD puede decir qué usuarios pueden acceder a ella. Al definir las vistas esta seguridad aumenta ya que puede conseguir que un usuario acceda a ciertos atributos de una tabla y no a otros.