Bases de Datos Cap:III El modelo relacional

25
ESCUELA: NOMBRES: BASE DE DATOS I CICLO Ciencias de la Computación Ing. Juan Carlos Morocho OCTUBRE 2009 – FEBRERO 2010 1 BIMESTRE: I BIMESTRE

description

El modelo relacionalPonente: Juan Carlos Morocho

Transcript of Bases de Datos Cap:III El modelo relacional

Page 1: Bases de Datos Cap:III El modelo relacional

ESCUELA:

NOMBRES:

BASE DE DATOS I

CICLO

Ciencias de la Computación

Ing. Juan Carlos Morocho

OCTUBRE 2009 – FEBRERO 2010

1

BIMESTRE: I BIMESTRE

Page 2: Bases de Datos Cap:III El modelo relacional

Capítulo 3

El modelo relacional

© Pearson Education Limited 1995, 2005

Page 3: Bases de Datos Cap:III El modelo relacional

3

Capítulo 3 - Objetivos

La terminología del modelo relacional Cómo se utilizan las tablas para representar

datos. La conexión entre las relaciones matemáticas y

las relaciones usadas en el modelo relacional. Las propiedades de las relaciones de bases de

datos. Cómo identificar claves candidatas, principales,

alternativas y externas. El significado de la integridad de las entidades y

de la integridad referencial. El propósito y las ventajas de las vistas en los

sistemas relacionales.

Page 4: Bases de Datos Cap:III El modelo relacional

Terminología del modelo relacional

Una relación es una tabla con columnas y filas. Sólo se aplica a la estructura lógica de la

base de datos, no a la física.

Un atributo es una columna nominada de una relación.

Un dominio es un conjunto de valores permitidos para uno o más atributos.

Page 5: Bases de Datos Cap:III El modelo relacional

Terminología del modelo relacional

Una tupla es una fila de una relación.

El grado es el número de atributos que contiene.

La cardinalidad es el número de tuplas que contiene.

Una base de datos relacional es una colección de relaciones normalizadas en la que cada relación tiene un nombre distintivo.

Page 6: Bases de Datos Cap:III El modelo relacional

Instancias de las relaciones Branch y Staff

AtributosR

ela

ció

nR

ela

ció

n

Ca

rdin

alid

ad

GradoClave primaria

Clave externa

Page 7: Bases de Datos Cap:III El modelo relacional

Ejemplos de dominios para algunos atributos

Atributo Nombre de dominioSignificado Definición del dominio

Conjunto de todos los posibles números de sucursalCarácter: tamaño 4, rango D001-B999

Conjunto de los nombres de calles en Gran BretañaCarácter: tamaño 25

Nombres de ciudadConjunto de los nombres de ciudad en Gran Bretaña Carácter: tamaño 15

Códigos postales Conjunto de los códigos postales de Gran Bretaña

Carácter: tamaño 8

Sexo El sexo de la persona

Fechas de nacimiento

Nombres de calle

Números de sucursal

Salarios

Posibles fechas de nacimiento de un empleado

Posibles salarios de un empleado

Carácter: tamaño 1, valor M o F.

Fecha, rango desde el 1-Enero-20, formato dd-mmm-yy

Monetario: 7 dígitos, rango 6000,00-40000,00

Page 8: Bases de Datos Cap:III El modelo relacional

Terminología alternativa del modelo relacional

Términos formales Alternativa 1 Alternativa 2

Relación

Tupla

Atributo

Tabla

Fila

Columna

Archivo

Registro

Campo

Page 9: Bases de Datos Cap:III El modelo relacional

Definición matemática de relación

Tenemos dos conjuntos, D1 y D2, donde D1 = {2, 4} y D2 = {1, 3, 5}.

El producto cartesiano, D1 ´ D2, es el conjunto de todas las parejas ordenadas, tales que el primer elemento de la pareja es un miembro de D1 y el segundo elemento es miembro de D2.

D1 ´ D2 = {(2, 1), (2, 3), (2, 5), (4, 1), (4, 3), (4,

5)}

Una forma alternativa consiste en hallar todas las combinaciones de elementos que pueden formarse tomando el primero de D1 y el segundo de D2.

Page 10: Bases de Datos Cap:III El modelo relacional

Definición matemática de relación Cualquier subconjunto del producto cartesiano

será una relación. Ej.R = {(2, 1), (4, 1)}

Podemos especificar qué parejas ordenadas formarán una relación indicando alguna condición de selección. Ej. El segundo elemento es 1:

R = {(x, y) | x ÎD1, y ÎD2, y y = 1}

El primer elemento siempre es igual a dos veces al segundo:S = {(x, y) | x ÎD1, y ÎD2, y x = 2y}

Page 11: Bases de Datos Cap:III El modelo relacional

11

Relaciones en una base de datos

Esquema de relación Una relación denominada definida por

un conjunto de parejas de atributos y nombres de dominio.

Esquema de la base de datos relacional Un conjunto de esquemas de relación,

cada uno con un nombre distintivo.

© Pearson Education Limited 1995, 2005

Page 12: Bases de Datos Cap:III El modelo relacional

Propiedades de las relaciones

La relación tiene un nombre distinto de los demás nombres de relación del esquema relacional.

Cada celda de la relación contiene exactamente un valor atómico (único).

Cada atributo tiene un nombre distintivo.

Los valores de un atributo pertenecen todos al mismo dominio.

Page 13: Bases de Datos Cap:III El modelo relacional

Propiedades de las relaciones

Cada tupla es diferente; no hay tuplas duplicadas.

El orden de los atributos no tiene importancia.

El orden de las tuplas no tiene importancia, teóricamente.

Page 14: Bases de Datos Cap:III El modelo relacional

Claves relacionales

Superclave Un atributo o conjunto de atributos, que

identifica de forma unívoca cada tupla dentro de una relación.

Clave candidata Una superclave tal que ningún

subconjunto propio de la misma es una superclave de la relación.

En cada tupla de R, los valores de K identifican unívocamente a la tupla.

Page 15: Bases de Datos Cap:III El modelo relacional

Claves relacionales Clave principal

La clave candidata seleccionada para identificar las tuplas de forma unívoca dentro de la relación.

Claves alternativas Las claves candidatas que no han sido

seleccionadas para ser claves principales.

Clave externa Un atributo o conjunto de atributos dentro

de una relación que se corresponde con la clave candidata de alguna (posiblemente la misma) relación.

Page 16: Bases de Datos Cap:III El modelo relacional

Restricciones de integridad Valor nulo

Representa un valor para un atributo que es actualmente desconocido o no es aplicable a esta tupla.

Representa la ausencia de valor y no es lo mismo que un valor numérico cero o una cadena de texto llena de espacios, dado que estos son valores.

Page 17: Bases de Datos Cap:III El modelo relacional

Restricciones de integridad

Integridad de entidad En una relación base ningún atributo de

la clave principal puede ser nulo.

Integridad referencial Si hay una clave externa en una relación

el valor de la clave externa debe corresponderse con el valor de una clave candidata de alguna tupla en su relación de origen o el valor de la clave externa debe ser completamente nulo.

Page 18: Bases de Datos Cap:III El modelo relacional

Restricciones de integridad

Restricciones generales Son reglas adicionales especificadas

por los usuarios o administradores de la base de datos que definen o restringen algún aspecto de la organización.

Page 19: Bases de Datos Cap:III El modelo relacional

Vistas

Relación base Una relación nominada correspondiente a

una entidad del esquema conceptual y cuyas tuplas están almacenadas físicamente en una base de datos.

Vista El resultado dinámico de una o más

operaciones relacionales que operan sobre las relaciones base para producir otra relación.

Page 20: Bases de Datos Cap:III El modelo relacional

Vistas Relaciones virtuales que no tienen por qué

existir necesariamente en la base de datos sino que se pueden producir cuando se solicite por parte de un usuario concreto, generándose en el momento de la solicitud.

Los contenidos de la vista se definen mediante una consulta sobre una o más relaciones base.

Las vistas son dinámicas, lo que significa que los cambios que se hagan en las relaciones base que afectan a la vista se reflejan inmediatamente en esta.

Page 21: Bases de Datos Cap:III El modelo relacional

Propósito de las vistas Proporcionan un mecanismo de seguridad

potente y flexible al ocultar partes de la base de datos a ojos de ciertos usuarios.

Permiten a los usuarios acceder a los datos de una forma personalizada para sus necesidades, de tal forma que los mismos datos pueden ser vistos de forma distinta por diferentes usuarios simultáneamente.

Pueden simplificar las operaciones complejas sobre las relaciones base.

Page 22: Bases de Datos Cap:III El modelo relacional

Actualizaciones de las vistas

Todas las actualizaciones efectuadas en una relación base deben verse inmediatamente reflejadas en todas las vistas que hagan referencia a esa relación base.

Si se actualiza una vista, la relación base subyacente debe reflejar el cambio.

Page 23: Bases de Datos Cap:III El modelo relacional

Actualizaciones de las vistas

Existen restricciones en los tipos de modificaciones que pueden efectuarse mediante vistas:

Están permitidas las actualizaciones mediante una vista que esté definida utilizando una consulta simple en la que esté involucrada una única relación base y que contenga la clave principal o una clave candidata de la relación base.

Page 24: Bases de Datos Cap:III El modelo relacional

Actualizaciones de las vistas

No se permiten las actualizaciones mediante vistas que impliquen múltiples relaciones base.

No se permiten las actualizaciones mediante vistas que impliquen operaciones de agregación o de agrupación.

Page 25: Bases de Datos Cap:III El modelo relacional