tema 5 - estatica y dinamica del modelo relacional

27
ESTÁTICA Y DINÁMICA DEL MODELO RELACIONAL PARTE ESTÁTICA

Upload: oxygened

Post on 22-Jun-2015

103 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Tema 5 - Estatica y Dinamica Del Modelo Relacional

ESTÁTICA Y DINÁMICA DEL MODELO RELACIONAL

PARTE ESTÁTICA

Page 2: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Recordamos…

• El Modelo Relacional fu creado por Codd en 1970.• Es el modelo lógico en el que se basan la mayoría

de los SGBD comerciales en uso hoy en día.• El concepto principal es la RELACIÓN. • Los datos se estructuran en forma de relaciones,

siendo objetivo fundamental del modelo mantener la independencia de esta estructura lógica respecto al modo de almacenamiento y a otras características del tipo físico.

Page 3: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Tablas o Relaciones

• Tabla es todo aquello de lo cual interesa guardar datos, por ejemplo: clientes, facturas, productos, empleados.

• Ejemplo: tabla Cliente

.....................................

[email protected]

9157878Rincón 876

Fernando Martínez

1226

[email protected]

4182569Guaná 1202

Juan García

1225E-mailTelefono Dirección Nombre Num CAMPOS

TUPLAS

Page 4: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Claves Primarias y Claves Ajenas

• Cada tabla tiene una clave primaria o principal (superclave), que identifica unívocamente al conjunto de datos.

• Algunas tablas contienen también claves alternativas.

• Cuando en una tabla figura la clave principal de otra tabla, ésta se denomina clave ajena.

• Las tablas se relacionan entre sí a través de las claves

ajenas.

Page 5: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Esquema de la base de datos

• Es el nombre que se le da a una relación, el conjunto de atributos en ella y las claves primarias y ajenas.

Director(nif, nombreyapellidos, nacionalidad)

Película (título, año, duración, nif_director(FK))

Page 6: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Restricciones

• Clave primaria (PRIMARY KEY)• Unicidad (UNIQUE)• Obligatoriedad (NOT NULL)• Integridad referencial (FOREIGN KEY)

EMPLEADO(NIF, nombre, dirección, tlf, departamento)

DEPARTAMENTO (nºdepartamento, nombre_dep, tlf_dep)

Page 7: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

• Clave primaria (PRIMARY KEY) => obligatorio, no se puede repetir, no puede tomar valores nulos

• Unicidad (UNIQUE) =>los valores de un conjunto de atributos no pueden repetirse en una relación (para claves alternativas)

• Obligatoriedad (NOT NULL) => no admiten valores nulos

• Integridad referencial (FOREIGN KEY) => el valor de un campo de una tabla que es clave en otra tabla debe existir en la tabla donde es clave primaria o ser nulo

Page 8: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Restricciones

RESTRICCIONES DE INTEGRIDAD REFERENCIAL

Nombre_editorial Dirección País Ciudad

Universal-Book Brown Sq. 23 EEUU Los Angeles

Rama Canillas,144 España Madrid

Mc Graw Hill Basauri, 17 España Madrid

Paraninfo Virtudes 7 España Madrid

Código Título … Editorial

00345D7 Int. Artificial Paraninfo

1022305 Diseño BD Rama

4939H2 C++ Mc Graw Hill

01123J3 Virus Informat. Rama

EDITORIAL

LIBRO

Page 9: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Restricciones

• Operaciones de borrado y modificación en claves ajenas:

– NO ACTION (Borrado o modificación sin acción)– CASCADE (Borrado o modificación en cascada)– SET NULL (Borrado o modificación con puesta a

nulos)– SET DEFAULT (Borrado o modificación con puesta a

valor por defecto)

Page 10: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

– Operación restringida (NO ACTION)• Borrar tuplas de una tabla (o modificar dicha clave) sólo se

permite si no existen tuplas con ese valor en la relación que contiene la clave ajena.

– Operación en cascada (CASCADE)• Borrar tuplas de una tabla (o modificar dicha clave) lleva consigo

el borrado o modificación en cascada de las tuplas de la relación que contiene la clave ajena.

– Operación con puesta a nulos(SET NULL)• Borrar tuplas de una tabla (o modificar dicha clave) lleva consigo

el poner a nulos los valores de las tuplas de la relación que contiene la clave ajena.

– Operación con puesta a valor por defecto(SET DEFAULT)

• Borrar tuplas de una tabla (o modificar dicha clave) lleva consigo el poner el valor por defecto en valores de las tuplas de la relación que contiene la clave ajena.

Page 11: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Restricciones

• Restricciones de verificación:– CHECK:

• Para especificar una condición que deben cumplir los valores de determinados atributos de una tabla.

• Ej: el sueldo de un empleado siempre ha de ser mayor a 600€

– ASSERTION (No disponible en Access)• La condición se establece sobre elementos de distintas

tablas.• Ej: ningún empleado que trabaje en el departamento de

contabilidad gana más de 10.000€

Page 12: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Práctica con ACCESS

1. Dada una base de datos ya creada, analizar la parte estática:

1. Identificar las tablas existentes, 1. Datos 2. Diseño:

1. Tipo de datos2. Restricciones: clave primaria, requerido, indexado, reglas de

validación

2. Observar las relaciones entre tablas: integridad referencial

Page 13: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Ejercicio con Access

• Crear una tabla nueva llamada departamento, que contenga los campos:– Identificador(3 caracteres)– Nombre (50 caracteres)– NIF_Jefe (50 caracteres)– Nº personas(numérico, check >1)

• Restricciones: – Identificador: primary key, not null, unique– Nombre: not null, unique– Nif_jefe: not null

• Añadir nuevo campo a la tabla personas: departamento.• Identificar claves ajenas y claves alternativas.• Añadir relaciones y especificar integridad referencial, con

operaciones de borrado y modificación de claves ajenas.• Introducir datos.

Page 14: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Máscaras de entrada en AccessCarácter Definición

0 Dígito (0 a 9, entrada obligatoria, signos más [+] y menos [-] no permitidos).9 Dígito o espacio (entrada no obligatoria, signos más y menos no permitidos).

# Dígito o espacio (entrada no obligatoria; los espacios se muestran en blanco en el modo Edición, pero se eliminan cuando se guardan los datos; signos más y menos permitidos).

L Letra (A a Z, entrada obligatoria).? Letra (A a Z, entrada opcional).A Letra (A a Z, entrada opcional).a Letra o dígito (entrada opcional).& Cualquier carácter o un espacio (entrada obligatoria).C Cualquier carácter o un espacio (entrada opcional).

. , : ; - / Marcador de posición decimal y separadores de miles, hora y fecha.< Hace que todos los caracteres se conviertan a minúsculas.> Hace que todos los caracteres se conviertan a mayúsculas.

!

Hace que la máscara de entrada se muestre de derecha a izquierda, en lugar de mostrarse de izquierda a derecha. Los caracteres introducidos en la máscara siempre se rellenan de izquierda a derecha. Puedes incluir el signo de exclamación en cualquier lugar de la máscara de entrada.

\ Hace que el carácter siguiente se muestre como un carácter literal (por ejemplo, \A se muestra sólo como A).

Page 15: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Dinámica del modelo relacional

Page 16: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

DEFINICIÓN• La dinámica del modelo relacional se expresa mediante lenguajes de

manipulación relacionales que asocian una sintaxis concreta a las operaciones.

• Sirve para manipular los datos mediante lenguajes de consulta que permiten extraer datos o actualizarlos.

• Los lenguajes relacionales operan sobre conjuntos de tuplas, y se dividen en dos tipos:

• Algebraicos: Se caracterizan porque los cambios de estado se especifican mediante operaciones cuyos operandos son relaciones y cuyo resultado es otra relación. Genéricamente se conocen como álgebra relacional.

• Predicativos: donde los cambios de estado se especifican mediante predicados que definen el estado objetivo sin indicar las operaciones que hay que realizar para llegar al mismo; se seleccionan, así, conjuntos de tuplas. Genéricamente se conocen como cálculo relacional y se dividen en dos tipos: orientados a la tupla y orientados al dominio.

Page 17: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

ALGEBRA RELACIONAL

• Es un lenguaje teórico con operaciones que se aplican a una o más relaciones (tablas) y da como resultado otra relación (tabla) sin modificar las originales.

• Fue definida por Codd (1971) como base para los modelos relacionales.

Page 18: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

ALGEBRA RELACIONAL

• Las cinco operaciones básicas del álgebra relacional son: selección, proyección, producto cartesiano, unión y diferencia de conjuntos.

• Estas operaciones se dividen en:– OPERACIONES UNARIAS: operan sobre una única

relación.– OPERACIONES BINARIAS: operan sobre parejas de

relaciones.• Además existen otras operaciones del álgebra

relacional: combinación, intersección, división.

Page 19: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Operadores

Operadores básicos

Operadores unarios

Selección σ condición (R)

Proyección π A1,A2,A3… (R)

Operadores binarios

Unión R1 υ R2

Diferencia R1 – R2

Producto cartesiano R1 x R2

Operadores derivados

Intersección R1 ∩ R2

División R1 : R2

Combinación R1 θ(condición) R2

Page 20: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores unarios

• Selección: se aplica a una única relación R y define una nueva relación R’ que contiene únicamente aquellas tuplas de la relación que cumplan una determinada condición (predicado)

• Notación: σcondicion (R)

Page 21: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores unarios

• Proyección: Se aplica a una única relación R y define otra relación R’ que contiene un subconjunto vertical de R, extrayendo los valores de los atributos (columnas) especificadas y eliminado las duplicadas.

• Notación: πatrib1, atrb2.. (R)

Page 22: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores binarios

• Unión: De la unión de dos relaciones R y S se obtiene una relación que contiene todas las tuplas de ambas tablas. Las filas repetidas aparecen una sola vez.

• Para que se pueda aplicar la unión, las dos tablas han de ser compatibles, es decir, deben tener el mismo número de columnas y dominios compatibles.

• Notación: Tabla1 υ Tabla2

Page 23: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores binarios

• Diferencia: La diferencia de conjuntos define una relación formada ñor las tuplas que se encuentran en la relación R, pero no en S. R y S deben ser compatibles

• Notación: R – S

Page 24: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores derivados

• Intersección: La operación de intersección define una relación compuesta por el conjunto de todas las tuplas que existen tanto en R como en S. R y S deben ser compatibles.

• Notación: R ∩ S

Page 25: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores binarios

• Producto cartesiano: La operación de producto cartesiano define una relación que es la concatenación de cada tupla de la relación R con cada tupla de la relación S.

• Notación: R x S

Page 26: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores derivados• Combinación o join: esta operación define una relación que

contiene tuplas del producto cartesiano de R y S que cumplen una determinada condición.

• Notación: – R θ condición S – (R X S) condición

Page 27: Tema 5 - Estatica y Dinamica Del Modelo Relacional

Estática y Dinámica del Modelo Relacional

Puerto Cruz MateosGestión de Bases de Datos.

Algebra: operadores derivados

• División: esta operación define una relación sobre los atributos de R que no son de S. Sólo se puede dividir cuando los atributos del divisor son un subconjunto de los del dividendo.

• Notación: R : S